Well, Amber sometimes "hangs" on me (basically the same thing, except with more contact it's a bit more annoying and makes it hard for me to maintain a good position). Usually when she gets tired, she never tries until the last few minutes of a ride. Giving her a bump usually nips it in the bud pretty quick.
I'm sure a chiro would improve his performance. Amber has an appointment at the end of the month, in fact. A kinesiologist, actually, but still, adjustments to the structure can do nothing but good when they're done by a professional.
I'd just suggest you try being a little more firm. Send him forward and wherever he tries to avoid you, be it throwing his shoulder out, getting on the forehand, or nose dragging, whatever - send him forward and just make him unhappy when he's disobeying. Just make sure you reward by taking the pressure off him. Punishment does no good without reward for correctness! ;)
Cinnamon Whiskey 11 y/o 15hh Chestnut AQHA mare, 2'6 Jumpers