Preheat the oven to 425ºF. Line a large baking sheet with parchment paper.
Slice the squash in half lengthwise and use a spoon to scoop out the seeds. Lightly drizzle squash halves with olive oil, give them each a pinch of salt, and place on the prepared baking sheet cut sides down. Roast for 40 to 50 minutes, until the squash is quite soft.
Let the squash cool for 15 minutes or until it's cool enough to handle, then peel off the skin. In a medium bowl, mash the squash using either a potato masher or your hands. You'll need 2 cups of squash for this recipe. *At this point, you can either refrigerate or freeze the squash until ready to use.
In a large pot or Dutch oven, melt the butter over medium heat. Add the garlic, onion powder, sage, nutmeg, salt, and pepper, and cook for 1 minute. Add the dry pasta and toss gently to coat the pasta in butter.
Pour in the water and 2 cups of butternut squash. Cover the pot and bring it to a boil over high heat. Once it reaches a boil, remove the lid and cook for 8 minutes, stirring occasionally so the pasta doesn't stick to the bottom of the pan. There will still be water left after 8 minutes.
Next, stir in the cream cheese until it's completely melted and pasta is al dente, about 4 minutes.
Turn down heat to low, and add the cheddar, Parmesan, and Gruyère cheeses. Stir until completely melted and mixture is creamy. Season with additional salt, to taste. Remove pot from heat and serve immediately.