I generally had the problem with Gnomes and Halflings that in practice they were races represented by a single individual. They were also too cute and twee. So I ditched them.
If you want to play a small person in my game, you have several options but the most obvious is Sidhe. If you wanted to play a Sidhe that was effectively a Gnome or Halfling, that would be completely within the wide scope available in appearance and personality. You'd just be the same race as that lass with insect antenna and purple hair, and that lout with feet on backwards, a hunchback, and a face like a troll. Of course, you'd be no more forced to admit that than humans are forced to admit that they are all related, but the Sidhe are pretty tolerant of differences in general.
There is a Sidhe in the current PC party. A misanthrope among his own kind, this Sidhe basically looks like a human boy and has been serving as a page/baby sitter/butler for a Princedom for the last 400 years or so. Brownie and domestic spirits consider him something of a noble of their kind, albeit one of a strange and eccentric demeanor. He is to a city and nation, what a common brownie is to a house and family. Recently, an attack on his city has provoked his normally gentle nature into something of an avenging spirit, a situation not helped by the fact that he's acquired an intelligent sword that provokes him to kill anything the feels threatens him. So basically you now have a beserker house elf with general sensibilities of the Punisher, and a really really nasty blood drinking sword.