Ok, so you asked and I am about to give you my soapbox.
I believe in cheerleading, as is in life, most people just want a fair shot. They want to feel like they got a fair chance in whatever contest they are attempting. Yes they will not enjoy and probably complain about losing (if they do as would I) but it takes the truly enlightened to realize if someone is upset they lost or upset they never had a chance to begin with. Competing in something where you never have the opportunity to accomplish the realistic goals that are in front of you is very disheartening and people get very passionate. On the opposite are those who get defensive from the passionate people calling that their contest was never fair to begin with (they never had a fair shot). They believe the people are just complaining because they lost and lots of times they are missing that those with a disgruntled voice have a point.
So, with that being said it takes an outsider with less emotion in the game to see the overall big picture.
First I think small gyms and large gyms should play by different age floors. Let anyone who wants to compete in small gym have no age floors. And to qualify out of small gym I think it should be two solid years over the small gym limit to move up and out (this gives time to adjust for sudden success). Every division in small gym should be 'open' but no small gym should be allowed to compete at Worlds (prevents people from abusing this). This would allow a small gym to make their teams and compete on a level-ish playing field.
Next when you compete at a competition there should be NO separation between small gym and large gym. They compete in the same divisions and when awards are called out They should announce the overall champion (whoever it is), the small gym champion (unless it is the same as the overall), and then everyone else is listed by score as 2nd - last. On the scoresheet just * when someone is a small gym and assign them small gym placements. (like 10th overall but 2nd small gym). Now you will always have more teams to compete in divisions, small gyms have a slight advantage, but no one feels like they are getting a trophy just to get a trophy.
Last large gyms should have floors to correctly correlate people with the right age group. Yes a small gym and area it is better to have an 8 year old on that senior 3 so they can compete than not compete at all, but at the gyms where they do have the numbers you should correctly place kids by age as much as possible. It means Worlds teams are less likely to fly itty bitties because of age (yes there are those who will be itty bitty because of who they are, my wife is one of them and that is fine). It means kids are more likely to stay with their small program longer if they cannot do Worlds until an older age (see helping the small gym). It means the junior divisions will stop suffering (they have gotten smaller and started flying younger flyers because they lost all their flyers to older teams).
It means a better long term plan for everyone. Good rules and divisions are not about making just next year better, but about making things grow correctly in the right direction.