Gather your ingredients.
Stir together garam masala, salt and turmeric in a small dish. Place flour in a shallow dish. Sprinkle chicken with ½ tsp of the spice mixture and dredge in the flour. (Reserve the remaining spice mix and 1 Tbsp of the remaining flour.)
Heat 2 teaspoons oil in a large skillet over medium-high heat. Cook the chicken until browned, 1 to 2 minutes per side. Transfer to a plate.
Heat the remaining 2 teaspoons oil in the pan over medium-low heat. Add garlic, onion and ginger and cook, stirring often, until starting to brown, 5 to 7 minutes.
Add the reserved spice mix and cook, stirring, until fragrant, 30 seconds to 1 minute.
Sprinkle with the reserved 1 tablespoon flour and stir until coated.
Add tomatoes and their juice. Bring to a simmer, stirring and breaking up the tomatoes with a wooden spoon. Cook, stirring often, until thickened, about 5 minutes.
Stir in cream. Add the chicken and any accumulated juices to the pan. Bring to a simmer and cook over medium-low heat until the chicken is cooked through, 3 to 4 minutes.
Garnish with cilantro.
Serve with rice and naan.