Boil salted water. Cook pasta until al dente. Reserve 1/2 cup cooking water; drain.
Heat olive oil in a large skillet over medium-high. Crumble in beef; brown well.
Spoon off excess fat if needed. Add onion; cook until softened, 3 to 4 minutes.
Stir in garlic, Italian seasoning, and red pepper. Cook until fragrant, 30 seconds.
Mix in tomato paste. Cook, stirring, until darkened and sticky, 2 minutes.
Pour in broth, tomato sauce, and Worcestershire. Scrape pan; simmer until slightly thick, 5 minutes.
Reduce heat to medium-low. Stir in heavy cream and butter; simmer until silky.
Sprinkle in mozzarella and half the Parmesan. Stir until melted and smooth.
Fold in pasta and peas. Splash reserved water as needed to loosen sauce.
Taste and adjust salt and pepper. Serve topped with remaining Parmesan and parsley.