Boil a large pot of salted water and par-cook lasagna noodles for 8 minutes. Lay out on a greased cookie sheet to dry.
In a medium size bowl, combine the ricotta cheese, egg, Parmesan cheese, 1 teaspoon Italian seasoning and salt and pepper. Set aside.
Heat a large skillet over medium-high heat and add Italian sausage. Cook until no longer pink, crumbling as you go with a spatula. Transfer to a plate or large bowl and set aside. Reserve about ½ cup of sausage for sprinkling on top.
Add onions and mushrooms to the skillet and cook over medium heat until tender; about 6-8 minutes. Add garlic and cook for another 1-2 minutes.
Spread a thin layer of marinara (about ½ of a cup) on the bottom of a 9x13-inch baking dish with high sides. Top with 4 lasagna noodles. Spread about ½ of the ricotta mixture evenly over the noodles, then the sausage and veggies. Sprinkle on about 1 cup of Mozzarella. Spoon ⅓ of the remaining sauce evenly over the cheese.
Layer on 4 more noodles, then the remaining ricotta mixture. Arrange a layer of the pepperoni (reserve some for the topping), then 1 cup of mozzarella and half of the remaining sauce.
For the final layer, top with the remaining ingredients: noodles, sauce, cheese, sausage and pepperoni. Sprinkle 1 teaspoon Italian seasoning and red pepper flakes on top.
Cover the baking dish loosely with foil. Place the baking dish on a sheet pan and bake for 30 minutes. Uncover and bake an additional 15-20 minutes or until lasagna is bubbling and browning around the edges.