Поскольку файлы шаблона анализируются при каждом запросе. Они не загружены в память. Но с файлами .py все по-другому, так как они загружаются в память при запуске сервера, поэтому для их перезагрузки необходим перезапуск.
LE: runserver проверяет изменения только в тех файлах, которые он загружает / нуждается для запуска приложения. то есть файл settings.py, ROOT_URLCONF, указанный в файлах настроек, INSTALLED_APPS и т. д.
Не думаю, что есть способ заставить его отслеживать определенный файл, который не загружен на runserver. И тебе все равно это не понадобится. Почему вы хотите перезапустить приложение для файла, который не влияет на выполнение вашего приложения.