Melt 1 Tbsp of butter on medium heat. Add the star anise and black cardamom (if using) and allow the flavor to infuse with the butter for a minute.
Add the chopped onions and ginger-garlic paste into the butter. Sauté until the onions start to brown. Then, add the spices - the cumin, garam masala, coriander, cloves, and chili powder. Give everything a good stir and let it cook for 1-2 minutes so the spices can bloom in the butter.
Once the oil starts to separate on the sides, add in the tomato paste, canned crushed tomatoes, sugar, and salt to taste. Switch the stove to low to medium heat, and allow the sauce to simmer. It'll start to thicken and darken significantly. The fat will once again start to release and form little pools.
Remove and discard the black cardamom pod and star anise. Transfer the ingredients into a blender along with the rest of the butter. Blend the sauce until it's completely smooth.
Transfer the sauce back into the pan. Pour in the heavy cream and continue to simmer until the sauce is thick. This is a great point to taste and adjust for spices. Remove from heat and finish off the sauce with a pinch of kasuri methi.