Bring a pot of salted water to a boil. Cook the bacon in a Dutch oven over medium-high heat, stirring, until crisp, 3 to 4 minutes. Remove the bacon with a slotted spoon to a paper towel–lined plate.
Add the scallions to the Dutch oven (reserve 1 tablespoon of the dark scallion greens for topping). Cook over medium heat until softened, about 1 minute. Add the flour and whisk until toasted, 1 minute. Slowly whisk in the milk. Whisk in the mustard powder, 1/2 teaspoon salt and a few grinds of pepper. Bring to a boil, then reduce the heat and simmer, whisking occasionally, until the sauce is thickened and smooth, about 5 minutes.
Meanwhile, add the pasta to the boiling water and cook as the label directs for al dente, adding the asparagus to the pot in the last minute of cooking. Drain, reserving 1 cup cooking water.
Whisk the cream cheese into the sauce until smooth. Reduce the heat to low and add the Parmesan and Jack cheese, a little at a time, until fully melted. Remove from the heat if the pasta is not done yet.
Stir the pasta, asparagus and peas into the sauce. Season with salt and pepper. Thin with the reserved cooking water, if needed (the sauce will thicken as it sits). Divide among bowls. Top with the bacon and reserved scallion greens.