Preheat your oven to 425°F (220°C). Peel the butternut squash, remove the seeds, and dice into roughly 1-inch cubes. Toss with 2 tablespoons olive oil, salt, and pepper on a baking sheet in a single layer. Roast for 25-30 minutes, turning halfway through, until golden and tender.
While the squash roasts, heat a large pot over medium heat. Add a splash of olive oil and sauté the chopped onion until translucent and soft, about 5-7 minutes. Add minced garlic and cook for another 1-2 minutes, stirring frequently.
Add the roasted squash to the pot with onions and garlic. Pour in 4 cups vegetable broth, stir in 1 teaspoon ground nutmeg, and season with salt and pepper. Bring to a boil, then reduce heat and simmer for 10-15 minutes.
Use an immersion blender to puree the soup until smooth and velvety. Alternatively, transfer soup in batches to a blender and puree until creamy. Return to pot if needed.
Stir in 1/2 cup heavy cream to enrich the texture. Heat gently on low without boiling until warmed through.
In a small skillet over medium heat, melt 2 tablespoons unsalted butter. Cook until foamy and golden brown, about 3-4 minutes. Add chopped fresh sage leaves and sauté for 30 seconds. Remove from heat immediately.
Ladle the hot soup into bowls and drizzle with sage brown butter. Garnish with whole sage leaves or freshly cracked black pepper if desired. Serve immediately.