I think one of the main reasons we see so many generic brown-haired youngish white guys as protagonists is because most AAA titles don't actually have lead lead characters. They have neutral icons onto which the players can project themselves. The lead character becomes the player's appendage into the game, the means by which he or she manipulates the world. Do you care about the individual personality of your hand? In many games, the player character has no purpose other than to let the player enter the world. Master Chief is a perfect example of this--I would say that he is not actually a character, since he doesn't really change over the course of the games and his personality traits have pretty much nothing to do with the story whatsoever. He's just there to give the player access to the action, like the spaceship in Asteroids, the tank in Space Invaders, or the cursor in Missile Command.
In most of these games it would probably be incredibly simple to just include a female option--the player character sprite and dialog would be female instead of male. Would the Halo games be any different if Master Chief were female instead of male? I'm actually kind of confused as to why game companies don't do this. There would of course be a slightly increased cost (you'd need two voice actors instead of one, and you'd have to use up memory on another set of audio files and animations), but I would think the increased revenue would make up for it. But game companies have probably already experimented with this and run the numbers, and probably the reason they don't do this is because it's not worth it. If a lead character is nothing more than an avatar of the player, it really doesn't matter enough to bother.
Until the protagonists of more games are actually characters (in the sense that they are a dramatic participant in the story), I think the only differences between male "characters" and female "characters" will be superficial (boobs, booty, and legs as opposed to massive pecs and ripped arms). And until audiences are interested in stories beyond "kill everything that gets in your way," there is no reason to have actual characters. It's a waste of time. After all, do you really care when your in-game persona gets all angsty about the heaps of people he has killed? You yourself certainly don't feel bad, and you probably won't question or rethink the way you're playing the game because of it. And you know damn well that the only way to continue in the game is keep right on killing people! That angst is completely inconsequential, and the game would probably be better if it were removed entirely! Completely inconsequential "character traits" are not actually character traits. They are depth decoys for simpletons.