Put lamb, flour, garam masala, cayenne, salt and half the yogurt in a bowl; mix together well.
Shape into 16 long ovals.
Heat oil in a shallow heavy saucepan, add cinnamon, cardamom pods, bay leaves and cloves.
Stir-fry a few seconds, then add meatballs; cook until lightly browned on all sides.
Add ginger-root ; cook a few seconds more. Stir remaining yogurt into water; pour over meatballs.
Cover pan and bring to a boil. Reduce heat and simmer about 30 minutes, until meatballs are cooked and almost all the sauce has been absorbed, stirring gently two or three times.
Sprinkle with cilantro and serve at once.
Note: If meatballs release a lot of fat during initial cooking, drain off fat before adding yogurt liquid.