Well what I did was I did a lot o ground work, I stopped and said whoa every time and if my horse was ahead of me I would back her up. If she wasn't, I would give her a treat and pat her and keep going. I also made sure I said whoa every time and made it obviuus- now I'm the saddle I did the same thing, I sat back said whoa pulled back a little and if she didn't stop right away I would back her up. If she did I would pay her and do it only a couple more times. I also lunged her and out of the Blue said whoa and she stopped! So make sure you just keep practicing ground work, the whoa or whatever word you use, and to sit back! Make it fun for the horse and you!!
Lots of practice! Spend time doing walk/half/trot transitions to keep him listening and on his toes. It helps bring him back to you. When you want to halt, just think halt. Sit deep in your saddle, squeeze with your thighs not your calves and lightly squeeze the reins. It'll take a bit of time but it'll get there! And give plenty of praise when he does it right!