А в ответ на это могу сказать только то, что необязательно переписывать всё на асинк, только потому что ты решил выбрать aiogram. Боты часто идут как дополнения к уже готовым сервисам, и отдельные люди при мне переписывали requests и потоки на aiohttp. Достаточно просто блокирующие операции выносить в ThreadPoolExecutor, не зря модуль называется concurrent.futures
, он не нарушает конкурентности