Soak the basmati rice in water for 20 odd minutes. Wash and drain.
Cook the rice in boiling salted water, just a few drops of oil added to the water, till about 70% done. Drain the water. Spread the cooked rice on a flat dish, keep aside.
Marinate the mutton with very little salt. Heat 1/2 tbsp oil and 2 tsp ghee in a pan. When smoking hot, add the mutton pieces, lightly sear over a high flame. Keep aside.
Coarsely crush the cinnamon, green cardamom, black cardamom, cloves, nutmeg, mace and carom seeds. Tie the crushed spices in a muslin cloth to make a small potli.
Tie the crushed onions, 1 tbsp of crushed ginger, 1 tsp of crushed garlic, crushed coriander leaves and green chilies in a second muslin cloth to make a potli.
Pour the milk to a heavy bottomed pan, place the two muslin potlis and cook over a medium flame. When the milk comes to a bowl, gently add the seared mutton pieces.
Cook covered over a low-medium flame till the mutton pieces are just tender. Remember to stir the milk every couple of minutes to avoid the milk from boiling over. This would take close to 1.5 hr I would reckon.
Once the mutton pieces are just tender, remove the mutton from the milk, keep aside. Squeeze out the milk from the potlis, remove from the milk. Continue to cook the milk over a low-medium flame till it is reduced to just half a cup. Remove from heat, keep aside.
To assemble the biriyani, take a heavy bottomed pan, grease generously with 1/2 tbsp ghee and remaining oil. Start with a layer of basmati rice, add a layer of mutton pieces, sprinkle a layer of fried onions and half the reduced milk. Dot with ghee.
Follow this with yet another layer of rice, a layer of mutton, a layer of fried onions and the remaining reduced milk. Dot again with ghee.
Finally another layer of rice. Gently pour over the saffron infused milk and the remaining ghee. Seal the lid of the pan firmly with dough.
Heat a large pan over a low flame. Gently place the biryani pan over this pan and continue to cook over a low flame for 15-20 minutes. Alternatively, you can finish off the biryani in a pre-heated oven. 180C for 10-15 minutes.
Allow to rest for 10 odd minutes. Serve hot with raita.