Preheat oven to 375˚F.
Slice squash in half lengthwise and place onto a baking sheet, cut side down and roast for about 1 hour or until squash becomes fork tender.
Allow squash to cool for about 15 minutes, before scraping the flesh out with a fork, making sure to keep the peels intact. Place squash innards in a mixing bowl, lightly season with salt and pepper and set aside.
Place a skillet over medium heat and add oil and butter. Saute garlic and shallots for 2 to 3 minutes.
Add cream and broccoli and simmer until liquid has reduced by half and broccoli is slightly tender. Season with salt and pepper. Begin stirring in small amount of Parmesan into the cream until the sauce thickens enough to coat the back of a wooden spoon.
Add spaghetti squash to the skillet and and toss together with alfredo sauce and broccoli. Adjust seasonings and stuff hollowed squash peels with squash mixture.
Top each stuffed squash with a sprinkle of Gruyere and cracked black pepper. Place squash until a broiler and broil for about 2 minutes or until the tops of each squash brown and bubble.
Top each stuffed squash with fresh basil leaves and serve.