Это не проблема синхронизации времени, это происходит из-за start_date и schedule_interval, воздушный поток по умолчанию вычисляет, сколько раз он должен был быть выполнен от start_date до текущей даты, и запускает прогон DAG для любого интервала, который не был выполненная проверка здесь .
В вашем случае дата начала - 7:01, а в соответствии с вашим schedule_interval интервалы выполнения - 8:00, 9:00, 10:00 ...
Вот почему в 8:00 запускается DAG, вы можете отключить это поведение по умолчанию, установив параметр catchup = False в своем определении dag.
dag = DAG('Hourly_test_2', catchup=False, schedule_interval='0 * * * *', default_args=default_args)