Place a large pan(10 inch or larger) on stove. I use an enamaled cast iron pan, non stick pan or kadai will work too. Add ghee and avocado oil and let heat up on low flame.
Temper the oil with whole spices - cloves, star anise and green cardamom. Sprinkle ½ teaspoon of coarsely ground black pepper powder. Fry the spices on low heat for 8-10 seconds taking care not to burn them.
Add the chopped onions next. Fry on medium flame until they turn golden brown. This will take about 6-8 minutes.
Next, add the ginger & garlic pastes and sprinkle the ground spices (coriander powder, turmeric powder and red chili powder). Also add the fresh curry leaves to the pan. If you wish you can add few green chillies at this stage.
Immediately, add 2-4 tablespoon(or as needed) of the meat stock to prevent the spices from burning. Mix together and cook for 1-2 minutes until the raw smell disappears.
Then add the chopped tomatoes and cook for 4-5 minutes until the tomatoes become soft and the oil begins to separate from the masala. Don't dry out the tomatoes too much.
Now we beging the "fry" part of the recipe. Bump the heat to medium high and add the cooked meat pieces to the pan. Combine well so that the masala coats the meat.
For the next few minutes, stir-fry the meat while stirring regularly. Add meat stock in parts and continue to fry until the mutton absorbs the flavors and the masala turns thick and the oil starts separating. This should take around 10-12 minutes.
Towards the last 3-4 minutes of frying, sprinkle the final round of freshly ground black pepper and lemon juice over the meat and continue to fry. Do not dry out the masala completely as it will continue to thicken as the meat cools down.
You could garnish with chopped cilantro if desired. Serve hot with steamed rice, parotta, or roti.