As duas formas há tempo e a tempo estão corretas, contudo seus significados são diferentes.

Ou seja, ambas as palavras são válidas, devendo, no entanto, ser usadas em diferentes situações.

Há tempo significa que ainda existe oportunidade temporal para [..]

Já não há tempo para mais.
Ainda há tempo para concluir o tarefa.

[..] ou que faz tempo (passado) que.

Há tempo que não sentia tanta falicidade.
Esta zanga já dura há tempo que chegue.

A tempo é uma locução adverbial – significa oportunamente, em boa hora; dentro do prazo, no momento correto; ainda no prazo para realizar algo.

Nunca chegará ao palácio a tempo.
Voltarei a tempo da nossa reunião.