In a large, heavy skillet, heat a drizzle of oil over medium-high heat. Add the onions and saute for 5 minutes, until soft. Add the chicken thighs, pushing the onions out of the way, and brown them a bit on all sides - don't worry about cooking them through. Add the garlic and ginger and cook for another minute or two.
Add the can of tomatoes, the tomato paste, chili powder, curry paste, garam masala and cinnamon and bring to a simmer. Cover and cook for 20 minutes, or until the chicken is cooked through. Remove the lid and cook until the mixture thickens and looks more saucy and uniform.
Stir in the cream, season to taste with salt and pepper, and serve hot over rice.