I like where you're going here, its hard enough to find the training spaces for a u18, u21, u23 and senior squad. But maintaining a positive cashflow is near impossible.
However more revenue might not be the answer here, as it may lead some teams to continue to run a budget u21/u23 squad to bring more cash for the senior squad. Maybe the solution might be finding a way to drop the salary level for younger players. If u21 players only got 10% of the comparable senior players it could make developing a u21 team negligible for maintaining salaries. This would also be realistic as in many pro sports even the top young players don't land their big contracts until their mid 20's.
I could see this being implemented in three ways:
(1) Age basis slowly tier up the salary with an age based 'reducer'. Rough example: 19 (10%), 20 (15%), 21 (20%), 22 (30%)... etc.
(2) U21/U23 Discount: Players under 23 have a reduced salary, or flat salary similar to youth players.
(3) Tied to experience: 10% per exp level. The more they are played, the more their experience and salary will grow. By the time they are experienced they will earn the full salary. Just as a baseline, most of my senior squad are 24-28 years old having come up either through my youth squad or as 19yos, these the 26+ year olds are just starting to hit 10 exp (100% salary).
The more I think of this the better I think this could be for development. There would be the risk of teams going full farm, however the training field limit of players would likely solve this risk.