Чтобы упорядочить код приложения мы прибегаем к ряду мер. В том числе используем пространства имен и распределяем файлы по директориям. Про пространства имен вроде бы понятно. Вопрос что есть для Laravel для второго пункта.
В Laravel имеется такое решение как пакеты. Штатная штука и ее вроде бы можно использовать для модульности. Но для каждого пакета нужно будет очень много настроек прописывать вручную. Весь код лежать в packages/имя пакета/src … и выглядеть как нечто стороннее. Метод рабочий, но он, скорее, для подготовки пакетов, которые будут использоваться в других проектах.