Heat 2 tbsp of butter in a pan. Add all the dry spices like cumin powder, cloves, whole peppercorn, whole dry red chilis, cinnamon stick, bay leaves, black and green cardamom. Saute all these seeds/spices in butter for couple of minutes until the cumin seeds start to fragrant and become golden brown.
Add chopped onions and a pinch of salt. Saute until they become translucent.
Add garlic-ginger paste and saute for couple of minutes or until the raw smell of garlic disappears.
Add chopped tomatoes and saute until they become very mushy.
Add tomatoe paste, mix it well and saute for 3-5 minutes. If it gets too dry, add little water at a time and keep cooking.
Add rest of the spices and mix well. Keep sauteing the spices for another 5-6 minutes on medium heat or until the grease starts to separate from the gravy.
Add water and heavy cream. Mix well and simmer it for couple of minutes. Add kasoori methi and mix well. If gravy is too thick, add more water and/or cream to make it thiner.
Add baked paneer, onions and peppers. Mix well and taste it. Add more salt or any other spices if needed. Simmer everything for 3-5 minutes.
Garnish it with fresh cilantro and serve it hot with naan, jira rice, raita and side of crunchy kachumber/salad!