I tend to agree with Jink. Gaara was a pretty bloodthirsty guy for a long time. Sure, after his fight with Naruto, he turned into a good guy and strived to be recognized by his village. The way I see it is that the sand village has a group of elders who discuss policy, etc... about the village and probably are responsible for choosing a kazekage when necessary. It is likely that some members chose Gaara as kazekage in order to keep an eye on him and others chose him because of his strength and others chose him because of his newfound personality.
However, I don't really think that Kishimoto kept Gaara alive just because he was a popular character. The whole point of the series is that one of Naruto's (the character) strengths is his ability to earn friends. Gaara was one major example of this, and, when the time comes, I'm sure Kishimoto will bring him back in order to help Naruto (cause it seems that Naruto has a lot of trouble coming up ahead). Also, Gaara represents the link between the sand and leaf villages. If Gaara died, then who would be kazekage? Kankurou? Temari? Doubtful. Keeping Gaara alive is necessary in order to show Naruto's ability to form bonds with enemies, strangers, etc...etc... and in order to build him up as the next great hokage (because he can build ties with other villages).