Turn on Instant Pot on SAUTE mode. After it displays HOT, add oil. Add cumin seeds, black peppercorns, cardamom seeds and fry for a minute. Now add chopped onions. Sprinkle some salt and fry for about 5-7 minutes till the onions are golden brown.
Add minced garlic and ginger and sauté further for another minute. Add tomatoes and cashews and sauté for another 5 minutes or till tomatoes are mushy. Press and Cancel SAUTE function.
Let the mixture cool down. Now blend this cooled mixture with 1/4 cup of Paneer/cottage cheese and 1-2 Tablespoon of water to make a thick paste. ( Alternatively, use an immersion blender and make a smooth curry paste in the Instant Pot itself)
Turn the SAUTE function back on. Add butter and pour this thick gravy into it. Continue to stir for about 10 minutes till the gravy becomes glossy. You can add little water if it starts to burn or stick to the bottom.
Once oil starts to separate add garam masala, shahi paneer masala, chili powder and salt. Add about a half a cup of water to make smooth curry sauce. Let it come to a boil again.
Add the paneer cubes in the gravy. Mix well and cook for 2-3 minutes. Stir and taste. Adjust seasoning if needed. Crush kasuri methi on your palm and add it to the curry.
Cancel SAUTE. Add a swirl of cream ( if using ) Garnish with chopped cilantro. Serve hot with roti, naan or rice. Enjoy!