When he starts leaning on you stop him completely and drop the reins. If he walks off pick the reins back up and back him up the equal amount of steps. And anytime you ask him to stop if he pushes into your hands back up until he quits.
Also are you working with a dressage instructor? They are worth their weight (and then some!) in gold!! Even a few high quality lessons are going to help you go so much further in your training.
Lastly transitions. Lots & lots of walk-trot, walk-canter etc. transitions should help!
Happy Riding! 😀