1. за time.sleep() в asyncio бьют ногами
2. если тут aiogram, значит рядом есть и redis, создавай в нем ключ с id пользователя с нужным временем жизни, потом пишешь middleware с проверкой на этот ключ, если он есть, то игнорируешь запросы от этого юзера