7 players per team does make a lot of sense, but so does having two teams count as one for the same rankings and member swapping.
I would personally cap it at 11, or one less than three teams, so that organizing anything involving 4v4 internally will have subs available.
Just like with the 7 limit, you can switch up varying weapon loadouts to hopefully counterpick other teams or suit the maps and modes for the match, but with 8+ you can have an A team and B team with subs for both.
Maybe have a designated "sub" pool, which could even be part of multiple teams. But if more than 2 of them play on the "main" team, or for two matches in a row, they have to register as a separate team with their own ranking. This would be under the 7 limit, so if a full team needed one more member for practice, they can grab it, or if they totally need that third Charger, they've got it, but under normal circumstances they'd just use the main 4-7 heavy lifters. It'd also allow for two affiliated teams to borrow the same occasional player if they don't want to fully commit to either one, but they cannot become a mainstay of any team.
I'd imagine it'd be more like two separate teams of 4-6 players each that both share 2-3 floaters who can't always play, either time constraints or team composition not being favorable.
This would solve a potentially big problem with large teams being completely unpredictable by swapping out their entire roster before a match, while also allowing for anything a smaller team would wish to organize had they a few more members. Though you'd probably not count any matches played between the two teams for ranking purposes, I'm not sure if the two should share the same rank or be completely separate.
As for ranking tiers, I feel like, at the very least, the highest tier should have transparent Elo values publicly displayed. That's when it's most important, and "gaming" the system is less likely since there's always fierce competition for the absolute top spot. If a team is going to settle for just barely beating one more group, then knowing the exact value or not doesn't change anything. But if you wanted to know just how much "better" you were than everyone in your tier, a simple ordered placement isn't enough.