Add 2 tablespoons butter to a large pot and place it over medium heat. Once the butter is melted, add 2 medium carrots and 1 medium yellow onion. Cook for 5-7 minutes until softened, stirring often. Add 4 cloves garlic and cook for another minute.
Add 3 large green onions, 1 teaspoon salt, ¼ teaspoon black pepper, ½ teaspoon red pepper flakes, and 1 teaspoon fresh ginger. Stir everything together and cook for 1-2 minutes, until fragrant.
Add 1 pound sweet potatoes and 5 cups water to the pot and bring to a boil. Cover, turn the heat to low, and simmer until the sweet potatoes are fork-tender, about 25-30 minutes.
When the soup has been simmering for about 15 minutes, start the bacon. Place 8 ounces bacon strips into a large skillet over medium heat. Cook until crispy, flipping as needed. Transfer to a paper towel-lined plate to drain. Once cooled, chop or crumble into small pieces. Set aside.
Uncover the soup and remove the pot from the heat. Use an immersion blender to puree everything together until smooth, keeping the blade fully submerged and switching it off before lifting it out of the soup.
Pour in ½ cup heavy cream. Stir the cream into the soup, return the pot to low heat, and cook until just beginning to bubble. Check the seasoning and adjust to taste.
Ladle the soup into bowls. Divide the crumbled bacon among the bowls, then add pumpkin seeds and a small splash of heavy cream, if desired. Add the toppings just before serving so they keep their crunch.