А какой шаблон проекта на Laravel у Вас?
Все просто, для логики - сервисы. да.
В моделях оставются всякие рилешены, мутаторы, я туда так же сую проверки простые, типо checkIsPaid()
Ничего страшного, что сервис знает о модели.
А данные в сервис пердавать желательно через DTO, также видел некоторые реквесты передают, но не массивом или списком агрументов.
Репозитарий обычно не нужен если используете элокуент. Репозитарий нужен как поддержка разных испочников данных. типо если у вас есть елокуент и докрин или вобще какое-то сторонее апи, то описывается интерфейс репозитария и уже для каждого источника реализуется по разному.
Если у вас только элокуент, то по сути репозитарий будет повторять вашу модель. вобщем шило на мыло. элокуент грубо говоря репозитарий для разных БД
Я бы вам посоветовал не тормозить на одном ларавел, хотите красивый и аккуратный код с правильной структурой и принципами, гляньте в сторону зенд. В нем есть куча готового под все задачи кода, и он очень просто для расширения. Все что можно там имеет интерфейс, то есть нужен ответ в json, сделайте свою реализацию используя интерфейс, но скорее всего там уже есть подобная реализация. 
Плюсы зенд., зенд ни чего не навязывает, не вью не модель, самое сложное это осилить конфиг, если смотреть в сторону зенд3, а лучше зенд-экспрессив, он более расширяемый
https://olegkrivtsov.github.io/using-zend-framewor...
Книжка по zf3 можно бегло пробежать, вы поймёте плюсы сами
https://github.com/zendframework/zend-expressive
Плюс пачка репов уже нужного кода (100+)