Heat 1 tablespoon ghee in a thick bottomed pan or kadai or a cast iron skillet. Use a well seasoned pan.
Once the ghee melts, add all the spices - coriander seeds, cumin seeds, fennel seeds, black peppercorns, fenugreek seeds, kashmiri red chillies (or byadagi red chillies) and guntur red chillies (or other Indian varieties of spicy and hot red chillies).
On a low heat stirring often roast the whole spices till they become fragrant.
Once the spices are roasted well and fragrant, add the garlic cloves and tamarind. Mix well and switch off the heat. Let this spice mixture cool.
Take all of the roasted spice mixture in a small grinder jar or chutney grinder.
Add 6 tablespoons water and grind to a smooth and fine paste. Do not make the ground paste too thin. If you make the paste thin, then skip adding water later.
Marinating paneer
Take all of the masala paste in a mixing bowl.
Add fresh curd (dahi or yogurt), 1 teaspoon lemon juice and salt as per taste.
Add paneer cubes. Mix very well.
Gently mix the paneer cubes with the masala so that the paneer cubes are well coated with the masala.
Marinate paneer for 30 to 45 minutes. If keeping for a longer time, then refrigerate.
In the grinder jar, add ¼ cup water and just swirl the jar, so that the masala paste which is stuck to the sides and bottom of the jar gets mixed with the water. You can also use a spatula or steel spoon to mix. Keep aside.
Making paneer ghee roast
Heat 2 tablespoons ghee in the same pan.
Add chopped onions.
Next add the curry leaves (kadi patta) - kept whole or roughly chopped and teaspoon turmeric powder (haldi).
Mix very well and sauté for 3 to 4 minutes or till the onions turn translucent on a low to medium-low heat. Do not brown the onions.
Now add all of the marinated paneer mixture. Also add all the masala scraping the bowl.
Mix gently but very well. Add ½ teaspoon jaggery powder and mix again.
Add ¼ cup of masala mixed water or plain water. Mix again very well.For a very thick gravy, choose to skip adding water or add about 1 to 2 tablespoons of water.
Simmer the gravy for about 1 to 2 minutes on a low to medium-low heat. Do not overcook the paneer as then the cubes will become dense and hard.
Once done, then switch off the heat. The gravy will thicken and you will see specks of ghee on top.
Serve paneer ghee roast hot garnish with some fried curry leaves or coriander leaves. You can also just serve paneer ghee roast without any garnish. Accompany onion slices and lemon wedges.
Notes
You can use tofu and mushrooms instead of paneer.
Choose to substitute oil for ghee and cashew yogurt or almond yogurt for curd (yogurt) and use tofu instead of paneer to make a vegan version. Press the tofu first to drain any extra moisture from it.
If using mushrooms, then do not marinate for 30 minutes. Just mix with the spice paste and then cook. No need to add water while cooking mushrooms.
Red chilies can be added less or more as per your preferences.