Preheat the oven to 400°F (200°C). Toss the cubed butternut squash with a tablespoon of olive oil, then spread onto a baking sheet. Roast for about 25-30 minutes until tender and lightly caramelized.
While the squash roasts, heat a tablespoon of olive oil in a large pot over medium heat. Add chopped onion and cook, stirring occasionally, until it becomes translucent and fragrant, about 5 minutes.
Add the minced garlic to the pot and cook for another minute until fragrant. Then, stir in the ground cinnamon, ginger, and cardamom, allowing the spices to bloom and fill the kitchen with warm aroma.
Stir in the peeled and sliced pears, cooking for 3-4 minutes until they start to soften and release their sweet fragrance.
Once the butternut squash is roasted, add it to the pot along with the vegetable broth. Bring the mixture to a boil, then reduce the heat and let it simmer uncovered for about 10 minutes to meld the flavors.
Use an immersion blender to carefully blend the soup directly in the pot until very smooth and velvety. Alternatively, transfer the soup in batches to a blender and purée until silky, then return to the pot.
Stir in the coconut milk to add creaminess and adjust the consistency as needed. Season with salt and pepper to taste. Warm through for a few minutes, allowing the flavors to deepen.
Pour the hot, seasoned soup into bowls, garnish with a sprinkle of spices or a drizzle of coconut milk if desired. Serve immediately to enjoy its warm, velvety texture and aromatic spice profile.