It sounds like your pony is on the forehand - he is carrying more weight on his front legs than his back legs. This will make his head and neck bob up and down in canter, while he tries to balance himself.
He needs to learn how to balance on his back legs more than his front legs - which can be done by riding LOTS of transitions between the gaits, and lots of changes of rein, and some leg yielding if you have started it.
As for his stopping, he sounds like a typical naughty pony that knows you will let him get away with stopping when he feels like it. I agree with your trainer, to give him a few good whacks on the backside and make life very hard for him when he stops.
It might help for your trainer to put you on the lunge, and when he stops he/she can go after him with a lunge whip if he doesn't respond to you. If you're scared, see if you can get a monkey strap put on the front of your saddle, or put a stirrup leather around the base of his neck. Then when you canter, hold onto the strap, sit right back in the saddle and MAKE him canter fast - think about making him gallop. Your pony just needs to learn that he HAS to go forward when you tell him to.
Good luck :)