It feels like whatever autoscheduler that is being used to "make things more fair" in theory ends up making things overly complicated and clearly doesn't work well. IIRC ESEA used to assign schedules 4 weeks ahead of time (twice a season) which meant you wouldn't have weird shit like playing the same team only a week after you played them last, maybe something like that could mitigate these issues?
I looked back at ESEA seasons and most seasons they had IM start with ~20 teams, where 3 or 4 max would die, leading to a situation where you played every single team in the div and usually didn't have rematches, I wonder if it'd be possible to restructure things slightly to try and have ~20 teams in adv? Last I played in S11 it started with only 11 teams and had 9 at the end of the season, whereas this season started with 15 and ended with 12. In ESEA the IM playoffs were also top 8 teams, which I feel like there's an argument for--it meant the more middle of the pack teams could at least have some hope of making playoffs, and it makes scheduling contentions like this not nearly as big a deal. Given how long there is between seasons you could probably extend playoffs a bit and do top8 double elim if people really wanted it as well. Maybe it's worth doing a poll of advanced teams to see if they'd want to do top8 next season?
Another potential scheduling thing that I heard but haven't seen discussed much is the idea that when a team dies, it's an advantage to the teams that have already played them, as the other teams either get forfeits, or get matched against better teams in the future (generally it's not the top teams that are dying). If there are going to be forfeits for teams that play the dead team, it would probably be the most fair to mark all previous matches they have played as forfeits as well, so a team that lucks into being scheduled against a team that just died doesn't get as negatively affected by it.
The idea that dead teams get fully removed from the scheduler with RGL means teams that didn't play them yet will have to play 16 matches vs real teams, whereas other teams get a free win obviously. IMO the best solution to this is to keep the dead team in the schedule until they've played each team once (then remove them), or somehow otherwise ensure that the amount of forfeits that teams get is even over the course of the season. Alternatively, if a team dies in the first few weeks you could just remove their previous games and have the teams that played them be rescheduled to play alive teams (therefore everyone gets to play the game more).