Half halt and slow down the speed of your posting.
Make sure you're giving lots of balancing half halts. When I teach a horse to lengthen his stride I always start in a leg yield for engagement purposes, then straighten, then push for power from my seat. From that I half halt/balance, push, half halt/balance, push over and over.
Make sure you aren't throwing your contact away. You need to create a barrier with your hand. he is probably running out the front. Without pulling, imagine that your hands are a wall; and simply hold the energy coming from your leg, this will give him something to push forward too. Also try encouraging him forward with your seat, rather than just your legs.