Для начала стоит узнать про mass assignment и сохранение связей. Потом про Flysystem и фасад Storage. В итоге количество кода уменьшится даже без паттернов.
Я бы посоветовал вам начать с более глубокого изучения РНР (ибо левая пятка мне вещует, что у вас есть пробелы в его знании) и чтения документации Laravel, желательно в оригинале.
Впрочем, правая пятка мне вещует, что вы проигнорируете мой совет...
Станислав Почепко: у человека нет понимания, что это все способы для разных задач. Это он ещё про конструктор не знает, видимо, и не до конца понимает идею массового присвоения.
Chvalov: я не понимаю вопроса. Для ФБ никаких телодвижений делать не нужно, он есть независимо от подключения/отключения любого стороннего провайдера. Вы плохо читали документацию и ищете отсутствующую кошку в тёмной комнате.