1. Combine garlic and ginger on a cutting board. Sprinkle with salt, and mash to a paste by dragging and pressing broad side of knife over mixture several times. Combine garlic mixture, yogurt, and 2 teaspoons garam masala in a large zip-top plastic bag. Add lamb; seal and marinate in refrigerator 8 to 24 hours, turning bag occasionally.
2. Add 1 1/2 cups water to bag; seal and shake to rinse lamb. Remove lamb from bag with a slotted spoon, reserving marinade in bag. Pat lamb dry with paper towels.
3. Heat a Dutch oven over medium-high heat. Add oil to pan; swirl to coat. Add half of lamb; cook 5 minutes or until browned, stirring occasionally. Remove lamb and juices from pan. Repeat procedure with remaining half of lamb.
4. Reduce heat to medium. Add cumin, cinnamon, cardamom, cloves, and bay leaves to pan; sauté 30 seconds. Add onion; sauté 4 minutes or until browned. Return lamb and juices to pan. Add paprika, ground red pepper, and saffron; cook 15 seconds. Add reserved marinade and tomato paste, scraping pan to loosen browned bits. Reduce heat to low; cover and simmer 1 hour or until lamb is tender. Remove from heat; stir in remaining 1/4 teaspoon garam masala, cilantro, and black pepper. Serve over rice.