01 - Preheat the oven to 400°F. Line a rimmed baking sheet with parchment paper.
02 - Using a sharp knife, halve the spaghetti squash lengthwise. Scoop out and discard the seeds. Place both halves cut side down on the prepared baking sheet. Roast for 35 to 40 minutes until the flesh is fork-tender and separates easily into strands.
03 - While the squash roasts, melt the butter in a medium saucepan over medium heat. Whisk in the gluten-free flour and cook, stirring constantly, for 1 minute to form a smooth roux.
04 - Gradually pour in the whole milk while whisking vigorously to prevent lumps. Stir in the Dijon mustard, garlic powder, onion powder, salt, and black pepper. Continue cooking, stirring constantly, for 3 to 4 minutes until the sauce thickens enough to coat the back of a spoon.
05 - Remove the saucepan from heat. Add the shredded sharp cheddar and Gruyère cheeses, stirring until fully melted and the sauce is silky smooth.
06 - Allow the roasted squash to cool until safe to handle. Run a fork through the flesh to pull apart long spaghetti-like strands. Discard the skins.
07 - Transfer the shredded squash strands into the cheese sauce and toss gently until every strand is evenly coated. Spread the mixture into a greased 9x13-inch baking dish.
08 - In a small bowl, combine the gluten-free breadcrumbs, grated Parmesan, and melted butter. Sprinkle the mixture evenly over the top of the casserole.
09 - Bake at 400°F for 10 minutes, or until the topping is golden and the edges are bubbling. Let rest for 5 minutes before serving.
10 - Scatter chopped fresh parsley over the top and serve hot directly from the baking dish.