Cut chicken into large cubes, place in a large bowl.
Put ginger, garlic, lemon juice, olive oil and 1-2 teaspoon garam masala into a blender or food processor – process till it’s a thick paste.
Pour over chicken, toss to coat, and marinate in the fridge for a few hours or overnight.
In a small bowl, measure out the 1 tablespoon garam masala, pepper flakes, cumin, coriander, bay leaf, and fennel seed. Set aside.
In a large pan, cook chopped onions in 1 tablespoon olive oil until tender and translucent.
Add chicken, cook until it starts to brown slightly.
Add marinara, heavy cream, butter, spices, yogurt, and milk, stir well to form a coherent sauce. reduce heat to medium, simmer for about 20 minutes – sauce will thicken.
After 20 minutes, taste. Season with salt and pepper, stir well, continue to cook for another 5-10 minutes.
Serve over cauliflower rice.