Chop the onion finely.
Fry spices: Heat the ghee or oil and butter mixture in a large saucepan, large enough to hold the paneer as well later. Add the green cardamom pods, cinnamon stick, and cumin seeds to the pan and cook, stirring often for about 2-3 minutes or until fragrant.
Saute vegetables: Add the chopped onions, grated ginger, and garlic and cook on medium-low heat, stirring often, for 3-4 minutes or until the onion is softer.
Add the turmeric, chili, ground coriander, fenugreek, and sweet paprika, and stir for about 2 minutes.
Simmer: Pour in the chopped tomatoes and their juices, the water, sugar, and salt. Stir well. Bring to a boil, turn down the heat, and simmer for about 15 minutes or until the sauce loses the raw tomato taste and thickens slightly.
Add paneer: Stir in the heavy cream. Add the roasted paneer and vegetable pieces to the pan and stir very carefully until they are coated with the masala sauce.
Leave the pan on the heat source until heated through, but don't let the sauce come to a boil again.
Sprinkle with coriander and serve immediately with naan bread, rotis, or rice.