1. In a mixing bowl, combine yogurt, lemon juice, garam masala, ground cumin, paprika, and salt. Add chicken chunks and marinate for at least 1 hour.
2. Heat butter in a skillet over medium heat. Add chopped onion and cook until golden brown.
3. Add minced garlic and ginger, cook for another 2 minutes.
4. Stir in ground cumin, paprika, and garam masala. Cook for 1 minute.
5. Add tomato sauce and bring to a simmer. Cook for 10 minutes.
6. Stir in heavy cream and simmer for another 10 minutes.
7. Add marinated chicken chunks and cook until chicken is done, about 15 minutes.
8. Garnish with chopped cilantro and serve hot.