Marinate the chicken: In a bowl, mix yogurt, lemon juice, garlic, ginger, garam masala, cumin, coriander, and turmeric. Add the chicken and let it marinate for at least 30 minutes.
Cook the chicken: Heat 1 tablespoon of butter in a pan over medium heat. Add the marinated chicken and cook until golden brown, about 5 minutes. Remove and set aside.
Prepare the sauce: In the same pan, melt the remaining butter. Add tomato puree, sugar, and salt. Let it simmer for 10 minutes.
Blend for smoothness: If you prefer a smooth sauce, blend it before adding the chicken back in.
Add the chicken: Return the cooked chicken to the sauce and let it simmer for another 10 minutes.
Stir in the cream: Add heavy cream and kasuri methi. Stir well and simmer for 2 minutes.
Garnish and serve: Sprinkle fresh cilantro on top and serve hot with naan or basmati rice.