I would argue that it's the formerly presumed binary nature of sex/gender that made it a logical split for all sports. While marital arts and weightlifting tend to seperate by weight as well, that is because those particular events are particularly biased toward muscle mass and height/reach by proxy. Most sports are less clearly advantaged by size (soccer, for example). You just can't practically divide entire team sports by gradations of height, because there aren't enough players in a school for more than a few squads.
If you wanted to divide by height or weight in a binary fashion to reduce the number of teams, then obviously you'll just have some sports where everyone in the under-6' team is 5'11.5, which seems not optimal and unfair.
I wish there was a good solution.