Instructions:
Heat oil in a deep pan over medium heat. Add cumin seeds and let them sizzle for a few seconds until aromatic.
Add the chopped onion and sauté until golden brown.
Stir in the minced garlic and ginger, cooking for 1-2 minutes until fragrant.
Add the pureed tomatoes and cook until the oil separates and the mixture thickens (about 5-7 minutes).
Lower the heat and mix in turmeric, red chili powder, coriander powder, paprika (if using), and ground cinnamon. Stir well to combine.
Slowly add the whisked yogurt, a little at a time, stirring continuously to prevent it from curdling.
Cook for another 5 minutes, letting the spices infuse into the yogurt-tomato mixture.
Add water to adjust the consistency of the gravy. Bring it to a gentle boil, then reduce the heat and simmer for 10-15 minutes, stirring occasionally.
Stir in garam masala and green chilies, if using, and cook for an additional 2-3 minutes.
Taste and adjust salt as needed.
Garnish with fresh cilantro and serve hot with naan, roti, or steamed rice.