Cut the squash vertically in half, and remove the seeds. Place the halves face down on the prepared baking sheet, and roast in the preheated oven until the skin is blistered and the flesh tender, about 40 minutes. Remove and allow to cool a little. Reduce the oven temperature to 350°F/175°C.
In the large bowl, whisk together the milk, eggs, egg whites, milk, 1/2 cup cheese, sage, thyme, sea salt, black pepper, and nutmeg. Allow to rest and let the flavors marry. Warm the oil in the skillet over medium-high heat. Sauté the chopped onion until soft, about 5 minutes. Add the garlic and sauté for 1 more minute. Allow to cool for a couple minutes, then stir the onions and garlic in with the egg and milk mixture.
Scrape the cooked squash out of the skin, and mash it in with the eggs and milk mixture, making sure the squash is thoroughly blended in. Stir in the torn bread, coating the bread thoroughly, then allow to rest for 10 minutes.
Spread the squash and bread mixture in the prepared baking dish, and sprinkle on the remaining 1/2 cup of Parmigiano-Reggiano cheese. Bake in the preheated oven until the pudding is set and lightly browned, about 45 minutes. Remove from oven and allow to rest about 5 minutes, then serve.