Разложу варианты по полочкам, потому что их несколько и у каждого свои ограничения.
Render - самый простой для Flask. Бесплатный тир есть, но с холодным стартом как написали выше.
Railway - раньше был полностью бесплатным, сейчас дают $5 в месяц кредитов бесплатно. Для маленького проекта хватит на несколько месяцев.
PythonAnywhere - заточен именно под Python и Flask, есть постоянный бесплатный тир без засыпания. Ограничение: только один веб-приложение, трафик 100GB в месяц, кастомный домен только на платных тарифах.
Oracle Cloud Free Tier - два виртуальных сервера навсегда бесплатно (ARM, 1GB RAM каждый). Это уже полноценный VPS, можно поднять что угодно. Регистрация требует карту, но деньги не снимают. Это самый мощный вариант из бесплатных, но нужно уметь настраивать Linux самому.
Для портфолио я бы выбрал PythonAnywhere или Render - там деплой занимает 15 минут с нуля.
Спасибо! Попробовал PythonAnywhere - задеплоил за полчаса, все работает. То что надо.