'a casa' means something very specific, from your example:
A che ora torni a casa?
means that you want to know the time that the person actually is back inside the house.
'verso casa' is 'in the direction of home', so you are asking, with approximation at what time the person will start to get back home, the approximation is implied by
'verso', which literally means 'in the direction of'.
Another possibility is 'ritorni', where ri- is a prefix (you might know) meaning
'again', ripetition, the question would be:
A che ora ritorni [ a casa ]?
'a casa' could be too much here, as ri- already implies back to the original place.
A little list of good examples (1), and errors (-1).
what is inside [ ... ] is optional.
1 [ Io] vado a casa.
1 [ Io ] [ri]torno a casa.
1 [io ] vado verso casa
1 [io ] [ri]torno verso casa
1 vado verso la macchina
-1 vado verso macchina
-1 vado verso la casa
1 tornero' a casa verso mezzanotte.
(I'll be back home approximately at midnight)
1 tornero' verso casa verso mezzanotte.
1 andro' verso casa verso mezzanotte.
Hope this helped!