Preheat the oven to 400 degrees F.
Cut the squash in half and scoop out the seeds with a spoon or melon baller. Slice the squash into crescent shapes and place in a bowl. Pour in the 2 tablespoons avocado oil and ½ tablespoon kosher salt. Mix to combine.
Lay the squash out in a single layer and put in the oven for 40 to 45 minutes, flipping at the halfway mark. Once the squash is very soft and starting to brown, remove from oven and let cool. After it cools, slice off the peel and cut up the squash into chunks.
While the squash is cooling, wash, dry, then thinly slice the leeks and shallots using a sharp knife and a cutting board. Next use a vegetable peeler to peel the apple and use the knife to cut up the apple into chunks. Set all three aside until the squash is cut into chunks.
Heat a large pot or dutch oven over medium heat. Add 1 tablespoon of coconut oil and let melt until shimmering. Pour the shallots and leeks into the pot and salute until soft, 4-5 minutes.
Add the cinnamon, nutmeg, and ginger and saute for roughly 30 seconds, until fragrant.
Pour in the broth, then add the diced apple and the cut up squash to the pot. The broth should nearly cover the contents of the pot. Increase the heat to high and bring to a simmer, then reduce the heat to low and continue to simmer for 15 minutes.
Let the soup cool slightly, then use the immersion blender to mix it until it reaches a creamy consistency with no chunks. You could also transfer to a stand blender and blend in batches, whichever is your preference.
Once the soup is blended, add the ½ cup of full fat coconut milk. Blend again until incorporated. Taste the soup, then add salt and pepper to your taste and stir in. I typically start with 1 teaspoon of kosher salt and ½ teaspoon of pepper, then add more as necessary.