Мне в целом не совсем ясно для чего такое городить в самом ларавели. Да, есть куча всякого удобного, только прям наверчено всего уйма. Тут хорошо бы понять почему так работает в ларе и как оно на самом деле может работать еще.
Сам делаю в простом случае так:
1. Создаю хранилище выше documentroot или public, как удобно.
2. Загружаю туда фото
3. Сохраняю в БД ссылку на него и отношения к пользователю
4. При показе изображения, например фото документа беру
dirname($_SERVER['DOCUMENT_ROOT'])
+ данные из БД, проверяю на существование файла и делаю
$image = 'data:image/jpg;base64,' . base64_encode(file_get_contents($image));