Chop tomatoes and add them to a blender jar along with cashews. If you don't have a powerful blender, soak the cashews for 15 minutes in a little amount of boiling water. Add them to the blender after draining the water.
After that, blend them to a smooth puree. If your blender doesn’t make a smooth puree, then filter the puree. I do not filter as mine does a smooth puree.
Heat 1 tbsp butter. Add a deseeded and slit chilli, along with 1 small cinnamon stick, 2 cardamoms, and 2 cloves. Skip the whole spices if you don't have any.
Add the ginger garlic paste when they start to sizzle (or ginger paste). Sauté until the raw meat flavour disappears.
Pour the tomato puree. It will start to splash, so cover the pan partially. Cook the tomato puree further until it thickens.
Add red chilli and salt.
Cook and stir until the sides begin to slide away.
Add a teaspoon of garam masala. Use 3/4 teaspoon of garam masala and a teaspoon of coriander powder if your masala is particularly potent. For one or two minutes, mix and sauté.
Add about 1 cup water and sugar and mix. You may need to adjust the amount of water.
As the gravy starts to thicken, cover the pan and simmer it on medium heat. At this point, the butter can be seen starting to lighten up a little on the gravy. You'll only detect a few traces of butter because it's not used very much.
After that, add paneer. Sprinkle crushed fenugreek leaves. Stir, cover and cook on medium heat for 2 to 3 minutes.
Add cream as desired. I added cream and cook until it begins to bubble. Your dish is ready!