Well, here's a topic that hasn't been done to death, huh? And not controversial in the least! To limit, or not to limit, that is the question!
First, in the interest of full disclosure: I love demi-humans. Yes, even halflings. Alright, especially halflings. For myself, I find the standard arguments in favor of level limits to be unconvincing at best, and completely off the mark at worst.
Balancing special abilities and perks: In campaigns that don't advance to high levels, level limits are obviously a moot point. When a campaign does run into epic levels, demi-humans are quickly outclassed by their human counterparts. Perhaps even worse, there's nothing left for them to look forward to, no greater heights to strive after. They just hit the wall, and that's it. It's a two-wrongs-make-a-right theory of game design, and there's nothing of balance in it. There's simply an imbalance at low levels, and an imbalance in the opposite direction at high levels.
Maintaining a human-centric focus in the campaign: Using level limts for this purpose seems like a jerk move to me, a way to weasel around just barring non-human PCs outright. It's perfectly legit to run a campaign for human characters only if that's your bag. And if it is, why compromise in a way that really satisfies neither your desire for a human-based campaign nor the player's desire to run a non-human character? There are other ways to limit non-human PCs, using diegetic and role-playing means rather than dissuading players from choosing them by capping their levels. Some referees allow only human PCs at the start of a campaign, and then allow the players to "unlock" new races as the party establishes contact with non-human populations. Even if demi-human PCs are allowed from the start, the campaign can be steered into a more or less human-centric track by playing up the prejudices and misconceptions that demi-humans would endure in an overwhelmingly human population. This is certainly a hindrance, and maybe a deterrent to some players, but it's something that a player can work with if he or she choose to take on that role, not a hard-and-fast cap on how good their characters can become.
Maintaining the supremacy of the human race in the campaign world: It's sometimes argued that the extremely long-lived demi-humans, having so many more years to gain experience, would vastly overpower the humans. However, it doesn't necessarily follow that a greater proportion of them will take up adventuring careers and attain high levels. Most dwarves, elves, and halflings are going to be unexceptional farmers, laborers, and crafters who will never see Level 2, just like most humans. Among those who do, the mortality rates are going to be pretty close to what they are for humans, and the longer an adventuring career continues, the greater the cumulative chance of it ending badly. A 25th level elf has about the same chance of dying while trying to reach level 26 as a 25th level human fighter. The members of those species who are most likely to live out those long life spans are precisely the ones who don't go chasing dragons for fun and profit.
If the overall balance of power in the campaign is still a concern, there's no reason why you can't decide that the long-lived races tend to lose interest in improving their class skills over the decades or centuries. It may be prevalent in the halfling spirit to give in to the lure of hearth and home around level 8 or so. Perhaps the average elf tires of violence and strife relatively quickly, and turns to a life of song and merriment or quiet contemplation of nature. Dwarven adventurers may succumb to their inborn urge to craft things of lasting beauty and trade in the battle axe for a smith's hammer. Defining demi-human cultures this way can not only help to explain the relative power and prestige of the races in the campaign but add color and life as well. What it shouldn't do is straitjacket player characters, who are, whether human or demi-human, fundamentally exceptional examples of their kind. It should define the behavior of NPCs, not player characters. It's essentially the referee telling the player, "Your character wouldn't do that."
There is one possible justification for level limits I can think of that does have some merit. It doesn't apply to classic D&D with race-as-class demi-humans, but it's worth mentioniong anyway.
Curbing min-maxing behavior: When race and class are separate, and thus demi-human characters choose from the same set of classes as humans, there could be a tendency to choose the race that's naturally superior in a given class. This is probably exacerbated by a system that differentiates races by adjustments to ability scores, and further if an "arrange to taste" method of ability score generation is used. If you have the choice to play your preferred class as a human with no adjustments, or as another race that gets a bonus to the class's prime requisite at the cost of a point or two from another less important ability, who's going to choose human? A hard limit on level advancement, though...that stings a bit, and makes the choice far less obvious. I'm still not saying it's a good reason for level limits. There are certainly better ways of going about balancing the races than that.
I do understand the need, even in a race-as-class system like B/X, to make playing a demi-human really feel different. I'll grant that level limits do that. Knowing that your dwarf is going to hit the wall at 12th level really does give it a different feel from playing a fighter. I just don't think it's the best way to accomplish even such a worthy goal as that, either.
Over the next few posts, I'm going to take a look at ways of breaking the level limits without breaking the game, and make playing a dwarf, elf, or halfling character feel special and different from the human archetypes sometimes associated with them.