Marinate the chicken. Add the chicken to a large bowl. Add the yogurt, garlic, paprika, garam masala, turmeric, and salt. Mix until the chicken is well coated, then cover and let it marinate for at least 30 minutes.
Cook the chicken. Heat the olive oil in a large skillet over medium-high heat. Add the marinated chicken and cook for 6 to 8 minutes, stirring occasionally, until lightly golden and cooked through. Transfer to a plate and set aside.
Start the sauce. Reduce the heat to medium. Add the onion and butter to the same skillet and cook for about 4 minutes, stirring often, until softened and lightly golden.
Add the aromatics. Stir in the garlic and grated ginger. Cook for about 30 seconds, just until fragrant.
Build the sauce. Pour in the tomato passata and chicken broth. Stir in the garam masala, paprika, sugar, and a pinch of salt. Let the sauce simmer for 8 to 10 minutes, stirring occasionally, until slightly thickened.
Finish with cream. Lower the heat and slowly stir in the room-temperature heavy cream until the sauce is smooth and creamy.
Bring it all together. Return the chicken to the skillet and stir well to coat. Simmer over low heat for another 5 to 6 minutes, then finish with fresh cilantro and serve warm.