Mix yogurt, lemon juice, 2 tbsp garam masala, 1 tsp cumin, and smoked paprika in a bowl.
Coat the chicken pieces in the marinade and refrigerate for at least 1 hour.
Heat oil in a large pan and sauté the onion until soft.
Add garlic and ginger, cooking until fragrant.
Stir in the remaining spices and cook briefly to release flavors.
Add canned tomatoes, simmer for 15 minutes, and blend until smooth if desired.
Return sauce to pan, add chicken, and cook until chicken is done.
Pour in cream, stir well, and simmer for another 5 minutes.
Garnish with fresh cilantro and serve hot with rice or naan.