No, it's unlimited - I tested it once and got over 100 gems before I got too bored to continue. I found that out at least a year ago and posted it, I believe. It only works after you've talked to Arundel but before you finish off Kresselak's quest.
Any good cleric can exploit this - there may be a minimum Cha requirement, but I'm not sure. There are three conversations strings you can get when you talk to a Kuldahar townsperson about the Vale of Shadows, and one of them always results in getting a garnet. It's the one about Bone Dancers. The pattern of conversations strings is non-random, so every third time you talk to a villager, you get a gem. However, I believe you cannot just talk to the same one all the time, as the gem-giving option does not reset unless you talk to a different villager. If you talk to three villagers repeatedly in the same sequence, each villager will have one conversation string, and the same villager will give you a gem each time.
Edit: Yep, almost two years ago in fact.
June 2004. Sorry, Serak, I'm not trying to rain on your parade. But the glitch has been found before, and it seems to be available to all installations (except maybe AB).
[ 04-06-2006, 05:57 PM: Message edited by: Aerich ]