Do not use a separate trainer. This is suggested by people who want to make money off you and it will not help. Here is why. The horse may get trained to do some things quite well. Then the horse is sent back to you. Now you don't know what was done or how. So you continue to do what you always did, and the horse reverts back to his original problematic behavior. Then you send him again to the trainer or sell him. Didn't fix much did it?? No, instead you start asking questions of learned horse people (As you are), hire a trainer who can work WITH you and the horse together.
Define your space with the horse. Walk him inside in an arena. Walk on his left side without letting him walk in front of or behind you. When you stop, he stops. If he:
1. keeps walking....a short tug on the lead rope until he stops, then release pressure and praise.
2. turns his head into your space.....correct with a soft short jab to the nose area, continue until he keeps his head turned facing ahead and out of your space.
Keep practicing this until he walks with you, and stops putting his nose in your space. When correcting tell him no. When he follows direction, reward by releasing pressure and petting him.
Now you are ready to move on to the round pen. Repeat everything above if he fails to walk with you, attempts to pull away for grass, walk faster than you, etc.
A young horse has a short attention span. Anything done for more than 15 minutes he will get bored. Change what you are doing, and go back to it after a short break. Always end with success. If its closing on the 15 minutes and he does one thing right, that is where you end that session.
Hope this helps