Пусть вас не смущают плохие примеры работы репозитория. Все эти однострочные методы репозитория с тем же успехом могут быть скоупами Eloquent, он по сути и есть ваш репозиторий, и для небольшого проекта этого вполне достаточно. Вообще пользуйтесь правилом: если не уверены, что вам нужен репозиторий, значит он вам не нужен.
А сервисный слой в данном случае всего лишь способ разгрузить контроллеры и избежать дублирования кода. То, что будет у вас между контроллером и моделью. Пример реализации:
https://laravel.com/docs/5.3/queues#creating-jobs создаем Job, выполняющий конкретную узкую задачу, и запускаем его через диспетчер