Add the olive oil to a dutch oven or large stock pot on medium-high heat until the oil is hot and starts to shimmer. Add the onions, garlic, salt and pepper, then mix together. Let cook for 10-15 minutes, stirring frequently, or until the onions are soft and translucent.
While the onions cook, combine the ginger, cinnamon, cloves, cardamom and curry powder in a small bowl, stir together with a fork so that all the spices are well mixed and there are no clumps.
Once the onions and garlic are cooked, add the chicken stock, followed by the pumpkin puree, bay leaves and spice mixture. Whisk all together to make sure everything is thoroughly combined. Bring to a boil, stirring occasionally to make sure the bottom does not scorch. Lower heat until just simmering and cook for 15 minutes more to let the flavors meld together.
Turn off the heat, add heavy cream, then salt and pepper to taste. Remove bay leaves.
If a more creamy texture is desired, use an immersion blender, or use a blender to puree the soup in batches.
Ladle into soup bowls and garnish with a dollop of crème fraîche and sprinkle of the toasted pumpkin seeds.