A tip my trainer from 6 years ago told me is to keep my "ballet muscle" tightened.
Lift your hands up in an O-shape over your head. Do you feel the muscle in the upper center part of your back tight? Now lower your hands and keep that muscle tense - it will keep your shoulders from slouching.
I had this problem for years, and ONE session with a new instructor and one exercise fixed it. Hold out your hand as if you were asking someone to stop, or pushing on something. Now ride some laps, figure 8's, all while stretching up, and "pushing" your hand out. Then do it with your hand straight up. Then (if you can with your horse) with one hand on your back and one on your stomach. Then do the other side. It has permanently improved my seat and position!
To help me with this my instructor put me in long stirrups.
She also told me to post my hips through my hands, and lean way back. Keep your seat in the low part of the saddle, and stretch the leg down.