Почитать? Почитай Альтшуллера про ТРИЗ (Теория Решения Изобретательских Задач). Например "Творчество как точная наука". Или загляни на
сайт. Там есть материалы для скачивания. Очень хорошо мозги вправляет. Но не увлекайся - одной книги на эту тему хватит.
Что делать? Надо для начала научиться формализовать задачу и декомпозировать задачу на подзадачи. Вот это решается практикой и изучением подобных решений. Поэтому никаких видосиков на ютьюбе. Читай Дейкстру/Хоора ("структурное программирование" и подобные). Читай исходники и обсуждения. SO тут совсем не лишний для создания своей коллекции методов и подходов.
Английский - прям обязательно. Просто потому что активно общающихся программистов там на порядки больше.