Rinse the paneer in water (if store bought) and soak in hot water for 15-20 mins
Wash the green peas and soak in water for 10 minutes. Later boil them with some salt for 7 to 8 minutes or till they are done. Do not cover while cooking as the green colour will be lost. Drain the water and reserve the stock in which it was cooked. Transfer the cooked peas in some cold water to retain its green colour.
In a kadai or pan, add 1 tablespoon oil and add roughly chopped onions and sauté on medium flame till it is golden brown in colour. Cool the onions and blend with some water to a fine paste.
Blanch the tomatoes in water for 5 to 6 minutes. Remove the peel, cool and blend in mixer to a fine tomato puree.
In a kadai, heat 1 tablespoon oil and then add 2 tablespoons butter. On a low flame, add all the whole spices - Bay leaves, green and black cardamom, cloves, cinnamon and cumin seeds. Then add 1 tablespoon ginger garlic paste and the ground onion paste.
Sauté for 2 to 3 minutes till it changes colour.
Now add the tomato puree, turmeric powder, red chilli powder, dhaniya powder, jeera powder, kitchen king masala and salt and mix well.
Add some stock which was used to cook the peas. Cook till the oil separates.
Now add the cooked peas and cook for 2 to 3 minutes
Dry roast kasuri methi and crush and add to the gravy. Add milk and mix well. Now add the paneer cubes and cook for 2 more minutes. Finally finish it with garam masala.