I was having the same problem last night. I would receive messages hours later or never at all. At first i thought that maybe it was chomp SMS but after uninstalling that the problem wasn't fixed. Finally I realized that i had never deleted any of my messages and had about 5000 built up in my inbox. I deleted them all and haven't had a problem since. This also happened once when i had the Mogul so i don't think it is a problem with the Hero, it could be HTC or Sprint.

P.S. It took quite a while to delete all of the messages so i finally ended up pressing delete and going to be and they were gone by morning.