Cut chicken into bite size pieces and put in a bowl. Add lemon juice, yogurt, salt, and spices (turmeric, cumin, galam masala, coriander) and mix to coat the chicken with the marinade. Refrigerate for at least 1 hour or overnight.
Heat a pot at medium heat and add the oil and butter. When the butter is melted, add the minced garlic and ginger and cook for a couple of minutes. Add the onion and cook until lightly browned.
Add the tomatoes and chicken broth. Bring to a boil for a few minutes uncovered.
Add the chicken and marinade to the pot, and bring back to a boil. Lower the heat and simmer for 30 minutes.
Add the heavy cream and simmer for 10 minutes.
Serve with steamed rice and garnish with cilantro or chives.