Heat a pan with oil and fry onions until they turn transparent.
Fry tomatoes with salt for 3 minutes. Cook covered till the mixture turns soft and mushy.
Add garam masala, coriander powder, cashews, red chili powder and sugar (if using) and Fry until the mix gets roasted well and it should begin to leave the sides of the pan. Switch off the heat
When the mixture cools, blend it with 1 cup water in a blender to very smooth.
Add butter to the same pan; add dry spices and fry for 1-2 minutes
Pour the blended puree, add red chili powder, if desired ¼ to ½ cup of water. Cook for 4 minutes and let the gravy reach the desired consistency before you add paneer.
Add paneer kasuri methi. Stir well and cook for 3 minutes and add some cream if desired.
Transfer butter paneer to a serving bowl and garnish with cream and coriander leaves.