Soak the cashews in hot water for 15-20 minutes.
Heat the butter and oil in a large pan over medium heat. Add the onion and cook until soft. Stir in the garlic and ginger, cooking for another minute until fragrant.
Add the tomatoes, Kashmiri red chili powder, turmeric, coriander powder, cumin powder, and a pinch of salt. Cook until the tomatoes are soft and the butter begins to separate from the mixture.
Transfer the cooked mixture along with the soaked cashews to a blender. Blend until completely smooth.
Return the smooth gravy to the pan and stir in the heavy cream, garam masala, and sugar or honey (if using). Simmer gently for 3-5 minutes.
Add the paneer cubes and gently stir until coated in the creamy sauce. Simmer for another 3–5 minutes without overcooking the paneer.
Crush the kasuri methi between your palms and stir it into the curry.
Garnish with a swirl of heavy cream, fresh cilantro, and a small knob of butter if desired. Serve hot with naan, roti, or basmati rice.