In a large saucepan of 2 cups water, cook rice according to package instructions; set aside.
Heat canola oil in a large stockpot or oven over medium heat. Season chicken with salt and pepper, to taste. Add chicken and onion to the stockpot and cook until golden, about 4-5 minutes.
Stir in tomato paste, garlic, ginger, garam masala, chili powder and turmeric until fragrant, about 1 minute.
Stir in tomato sauce and chicken stock; season with salt and pepper, to taste. Bring to a boil; reduce heat and simmer, stirring occasionally, until reduced and slightly thickened, about 10 minutes.
Stir in heavy cream until heated through, about 1 minute.
Serve immediately with rice, garnished with cilantro, if desired.