Another key to making practices effective, is keeping the time down but using that time efficiently. Once practices go past the 2-3 hour mark, their brains just stop thinking & its ten times more difficult to get things done seems like! Having a 5 hour practice with 2 hours of standing around is just a time waist for everyone imo. Start making conditioning a daily expectation. It doesn't have to be death conditioning, but if it is already ingrained in them to be mentally ready to condition each practice, it can go a long way! You will start seeing improvement over time with a consistent addition of the conditioning.
Another idea: Maybe get into a system of a practice checklist of what needs to get done that day......Go over it during stretching and tell them"do it right & we'll move onto the next thing" (with water breaks scattered in between of course). If the checklist gets done, then they get to do team builders at the end of practice. People like structure in their lives generally, including at cheer practice. This works well for jumps & cleaning particularly + repping skills.
An example of a usual practice typically was:
-run 2 laps around track to warm muscles
-stretch & go over day's expectations
-do our every practice jump circuit (5 R & L side hurdles, R & L front hurdlers, pikes, toes, double toes + two reps of a half circle of connected jumps (face 90 degrees to right for first pike, right front hurdler, right side hurdles, toe, left side hurdler, left front hurdler, pike))
-water break
-stunting or tumbling (start with repping out existing skills to be strong and clean and sharp, then move on to learning new)
-water break
-learning or reviewing motions, routine, cleaning, etc.
-conditioning
-team building if time