This horse has speed? how? if he won't loosen up and go forward on the lunge, how's he gonna do that under saddle?
Try using a flag or a plastic bag tied to a dressage whip for your aid to drive him forward. the instant he swings his butt toward you, fall apart! get so crazy with the whip that he jumps out of his skin! Once.
Then, the next time he starts to even think about swining that way, you rustle the bag and give him a stern "Ah@! Ah!" and send him forward.
When you do the first "fall apart" (this means swing the whip/flag/bag back and forth rapidly, or against the ground such that you create a commotion), make no mistake, he'll fall apart, too. So, be ready. He'll jump, maybe buck or rear or whatever and there'll be a big pull on the line. Pay no mind. Don't STOP becuase he gets upset. That is the WORST time to stop. keep the prime directive formost in your mind; GO FORWARD NOW!