Precook the squash. Line a baking pan with foil and spray with non-stick spray. Halve the squash and remove the seeds. Place the squash, flesh side down, on the baking sheet. Pour hot water into the pan to the ½- inch depth. Bake in a 350-degree oven until the squash can be easily pierced with a fork. This usually takes about 45 minutes depending on the size of the squash. Remove and cool. Scoop out the squash flesh. If making ahead to freeze, simply let squash cool, then place in either freezer bags or freezer containers. Label and freeze. Let thaw overnight in your refrigerator when you are ready to use them.
In a large stock pot, melt the butter over low heat. Add the onions and cook until lightly brown, about 10 to 12 minutes. Sprinkle the flour over the onion/butter mixture. Cook over low heat, stirring constantly, for 2 to 3 minutes. Add the milk, cream/half and half, cloves/nutmeg, stock, maple syrup, cayenne pepper, salt, white pepper and squash. Simmer on low heat, stirring frequently for approximately 20 to 30 minutes.
Puree the soup using either a food processor (you will need to do this in batches) or with an immersion blender. An immersion blender can go right into the stock pot. Blend until pureed. Taste soup and adjust seasonings as needed.
Garnish the soup with toasted pecans or pepita (hulled pumpkin seeds), if desired.
*** To make this soup with pumpkin, substitute 4 cups of canned pumpkin puree (not pumpkin pie mix) for the butternut squash.
***You can freeze this soup; however make sure you use heavy cream or half and half in place of the milk. Milk in a frozen soup will look curdled when thawed.