A martingale will not fix the problem. I would be checking for pain and also maybe getting a chiropractor out to look at him. Triple check saddle and bridle fit.
He might just be trying to stretch...idk I'm not there watching. Maybe try working him over ground poles, that way he has to pick his head up unless he wants to stumble, and no horse wants to stumble! Try to do more interesting things with him so that he wants to pay attention more.
I agree with the above, but I'd also have a farrier out (may a different one?) to check for hoof pain and balance.
I'd also have the vet out for spring shots and have him/her check the teeth and saddle fit.
Be sure you are not putting your saddle too far forward. The points of the tree (under the front concho on a western saddle and under the front d-rings on an english saddle) should be 1-3" BEHIND the horse's shoulder blades. English saddles should be 2-3" back, western saddles 1-2" back.
If everything checks out okay, I'd suggest "lifting" the reins up until he has his head where you want it, then putting your hands back in position. Say "Good Boy" and give a scratch when his head comes up. Repeat lifting until he gets it and keeps his head there. A bump or squeeze with the leg at the same time will help get your point across.
Do NOT "yank" his head up. That will only make his mouth sore and not teach him anything.
I'd also recommend trying a ThinLine pad
. They have demos and a guarantee, so you can get your money back if it doesn't work. The ThinLine pad will help make his back more comfortable and may encourage him to lift his head up and round his back under the saddle. The English half pad of countor pad works well, or the western half pad.