в base64 я бы не стал хранить. Ответ от сервера будет очень много весить, если картинок будет много. Когда-то попробовал так. Всё становится гараздо проще. В браузере конвертнул и в базу. А вот если нужно получить список товаров, например 50, и все картинки в base64, то ответ от сервера будет громадного размера.
Лучше хранить в папке, в базе путь к этой папке. Всё как всегда. Так и пришлось сделать.
Картинку проще вставить фоном, если они все разные и применить background-size: cover; Так многие делают. Например, всеми любимый vk делает точно также со всеми изображениями. Просто ограничивайте размер картинки, и всё.
Либо уже на сервере делайте обрезание картинки для нужного раздела. Так хуже, ибо нужно будет где-то хранить эти обрезанные картинки. Мне по душе фоном