Preheat oven to 375°F.
Bring a large pot of water to a boil. Liberally salt the water and cook pasta 2 minutes shy of al dente according to box instructions. Drain and reserve.
In a high-sided pan, heat olive oil over medium heat. Add sausage, breaking it up into small pieces with a kitchen spoon or potato masher as it cooks for 5-6 minutes, until almost cooked through. Add onion, garlic and 2 tablespoons sage, stir to combine and cook for an additional 2-3 minutes, until sausage is completely cooked through. Remove sausage mixture to a paper towel-lined plate and reserve.
In the same pan, melt butter until it begins to foam. Sprinkle flour into the pan and whisk for about 45 seconds to 1 minute, until butter and flour begin to smell nutty and fragrant. Slowly whisk in milk and stock until very well-combined and there are no lumps in the sauce. Bring béchamel to a bubble, reduce heat, and cook until thickened, about 4-5 minutes.
Remove from heat and stir in 1 cup Parmigiano Reggiano and 1 1/2 cups mozzarella. Stir until the cheeses have completely melted into the sauce. Season with nutmeg, salt and pepper, and fold in pumpkin purée.
To the pasta pot or a large mixing bowl, add cooked pasta, and sausage mixture .Carefully stir everything together with a large spatula, making sure you don’t overmix or break the pasta. Transfer pasta mixture into a 13x9-inch casserole dish. Sprinkle the remaining Parmigiano Reggiano, mozzarella, and sage over the pumpkin béchamel. Bake for 20-22 minutes or until bubbly on the sides and brown on the top. Let pasta sit at least 5 minutes before serving.