Preheat the oven to 350 degrees F. Cool the pasta shells according to package directions. Drain and run cold water over the shells.
While the shells are cooking, heat the olive oil in a large skillet over medium-high heat. Add the onion and cook until softened, about 4-5 minutes.
Add the garlic and cook for another minute. Add the Italian sausage and cook while breaking it up into chunks with a spatula until fully cooked. Remove from the heat.
In a small bowl mix together ricotta, 1 cup mozzarella, parmesan, and the egg. Stir into the ground beef mixture in the pan.
Grease a 9×13 inch baking dish and spread a thin layer of pizza sauce onto the bottom of the dish. Spoon the filling into each shell and arrange them in a layer on top of the sauce.
Pour some additional pizza sauce over each shell and top the shells with mozzarella cheese and chopped pepperoni.
Place into the oven and bake for 25-30 minutes or until the cheese has melted and the shells are heated through.