The only real solution I can see, that I've suggested before, is allow players to make a 'recommended level' setting for their lobbies. So 1 - 3 would be locked, then you could have "Recommended: 3 - 5" and "Recommended: 6+" lobby settings that players could select at set up. Nothing would fundamentally change, it would simply be a text display on the match screen.
That way it isn't restricted, but you could suggest that lower level players go to other lobbies, or suggest that higher level players do the same, based on where the person starting the lobby is. Having some sort of suggested level would let people know "This is a challenging lobby" or "this is for players who are beyond the beginner lobbies, but not quite ready to fly with the competitive players".
Players could still join at any level, but then you would have room to call someone out if say, an entire ship of level 8+ players are in a "3 - 5" lobby, and if you see a 'stacked team' in a "6+" lobby, you would know that those lower level players didn't read the requirement, or wanted a challenging match, and that the players who made the lobby made it with the intention of seeking a challenge rather than stacking for stacking's sake.
-Edit-
A third option would be to leave the setting at a default "open lobby", which would basically be what we have now, so if a player wanted just anyone to join, that could be another alternative.