Add all the ingredients under marination in a large bowl and marinate the chicken for at least 1 hours.
Heat 2 tablespoons of butter in a large pan or skillet on medium high heat and add the marinated chicken in tt along with the marinade.
Fry the chicken pieces on medium high heat until all water evaporates and the marinade sticks to the chicken and the chicken is cooked through. Keep it aside.
Meanwhile in another pan heat the rest of the butter.
Add the chopped up ginger and garlic and saute on medium heat for a minute.
Next add the onion paste and saute.
Saute for 3-4 minutes until the raw smell disappears and you see the oil separating from the sides.
Add the chilli powder, turmeric powder, coriander powder and cumin powder and salt along with 2 tbsp of water.
saute for 1-2 minutes or until you see the oil separating from the sides.
Next add the tomato puree and mix it well with the masala.
Cook on medium high heat stirring frequently for 10 minutes until the water is evaporated and the masla starts releasing oil.
Next add the fried chicken to the masala and mix it well. Saute for 1-2 minutes.
Add the slit green chillies along with 1 cup of water and bring it to a boil. Then lower the heat and simmer for 5-6 minutes.
Next add the fresh cream along with sugar/sweetener/honey and garam masala to the chicken masala and continue cooking for 2-3 more minutes.
The masala will be thick and buttery and sticking to the chicken pieces.
Serve it hot with naan or jeera rice.