Я бы посоветовал почитать про паттерны проектирования. Точнее не почитать, а действительно разобраться где и как нужно их применять. Лично меня это очень апнуло, при чем не только в ооп, но и вообще, так как с их знанием приходит понимание, что вообще из себя представляет архитектура. Начинаешь уже думать о зонах ответственности, данных которые должны принадлежать этим зонам, а также как это дело правильно связать между собой, чтобы не получилось куча зависимостей. Тогда про файлы/папки речи не будет идти, ты будешь мыслить другими категориями.
Из книг по этой теме рекомендую эту "Head First. Паттерны проектирования". Вначале может быть очень сложно и ничего непонятно, в таком случае можно отложить ее на несколько дней и вернуться к чтению после практики.
Но также добавлю, что пока не пройдешь какой то барьер, то такие книги будут не особо полезны, будешь читать, вроде все понимать, а на деле говнокодить. Можешь прочитать их все, но сразу ничего не получится, надо писать много кода, переписываться и снова писать. Только тогда будет хороший результат