How to Make It
In a small bowl, soak the rice in water for 15 minutes. Drain in a fine-mesh sieve and rinse under cold water until the water runs clear. Drain well.
In a food processor, pulse the quartered onion with the cup of cilantro leaves and the mint, cumin, paprika, allspice, cayenne, ras el hanout;and 1 1/2 tablespoons of salt until pureed. Scrape the puree into a large bowl and mix in the ground lamb and rice.
Line a large baking sheet with plastic wrap. Using lightly moistened hands, roll rounded tablespoons of the meat mixture into 1 1/2-inch balls and transfer them to the baking sheet.
Pour the 4 1/2 cups of water into a large, deep skillet. Add the sliced onion, butter, parsley, crushed red pepper and saffron to the skillet and bring to a boil. Remove from the heat and add the meatballs; they will not fit in a single layer. Cover with a tight-fitting lid and cook over moderately low heat until the meatballs are cooked and the rice is tender, about 20 minutes. Stir gently once or twice halfway through.
Using a slotted spoon, transfer the meatballs to a large platter. Strain the cooking liquid into a bowl and skim off as much fat as possible. Return the cooking liquid to the skillet and boil over high heat until thickened, about 10 minutes.
Return the meatballs to the sauce and simmer over moderate heat until heated through, about 2 minutes. Stir in the chopped cilantro and the lemon juice, season with salt and serve.
Ras el hanout, a Moroccan blend of up to 30 spices, including ginger, anise, cinnamon, nutmeg, peppercorns and cloves, is available at Middle Eastern markets.