Step 1In a large bowl, mix the yogurt and minced garlic. Add half the saffron and 1 ½ teaspoons salt, or to taste, and mix well. Let the yogurt sit for 15 to 30 minutes, stirring it every now and then, until it has turned a lovely yellow color from the saffron.
Step 2Trim the lamb of all excess fat. Place in a large roasting pan.
Step 3Pour the yogurt over the lamb shoulder and coat it well. Cover with plastic wrap and set aside for a couple of hours to give the flavors and seasoning time to infuse.
Step 4Thirty minutes before you plan to cook the shoulder, heat the oven to 450 degrees.
Step 5Add 2 cups water to the roasting pan. Mix well with the yogurt and loosely cover the lamb shoulder with foil. Roast until done to your liking — if you like your meat pink, calculate 20 minutes per pound, and if you prefer it well done, calculate 30 minutes per pound or a little longer.
Step 6About 20 minutes before the meat is ready, drain the rice and put it in a saucepan. Take the meat out of the oven and uncover. Drain the juices and add to the rice together with ground pepper, galangal, cardamom, coriander, cinnamon, cloves, the rest of the saffron, lemon juice and salt to taste. You may need to add a little water to bring the total liquid volume to 3 cups. Return the meat to the oven, leaving it uncovered so that it browns.
Step 7Bring the rice to a boil, then reduce the heat to medium-low, cover and simmer for 10 to 15 minutes, or until the rice is tender and has absorbed all the liquid. Check on the level of liquid and if the rice looks too dry, add a little more if needed. When done, take the rice off the heat. Uncover and sprinkle the top of the rice with the rose water. Then wrap the lid with a clean kitchen towel and place back over the rice. Set aside for 5 minutes.
Step 8Transfer the rice to a large serving platter, making space in the middle to place the shoulder of lamb. Garnish with the toasted almonds, pine nuts and chopped fresh herbs before serving.