Я бы все же рекомендовала посмотреть в сторону MVC и попробовать построить архитектуру в соответствие с этой парадигмой. Посмотрите как устроены некоторые фреймворки, например Laravel. Также можно посмотреть на Slim3, там нет жесткой структуры как в больших фреймворках, и можно самому создавать архитектуру, используя документацию.