1.상호 타이머에 다른 타이머가 돌고 있는지(if Timer1.Enabled then) 체크해서 대응하는 코딩을 하세요.
타이머1이 타이머2를 돌릴경우와 아니면 그 안의 루틴을 바로 실행하냐는 등의 순서도를 먼저 생각해보세요.
2.타이머 돌리는걸 어느 시점에서 다시 셋팅하는 소스를 넣어가며 디버깅해보세요.
//타이머가 실행중이면 중지후 정해진시간후 다시 실행
if Timer1.Enabled then Timer1.Enabled := False;
Timer1.Enabled := True;