Cook the meat, onion, and garlic. Heat a large skillet over medium heat. Then, cook the sausage, breaking it apart with a spoon, until it's browned and fully cooked. Transfer the sausage to a large bowl, and pour out any excess grease from the skillet. In the same skillet, heat the olive oil over medium heat. Add the diced onion and cook until soft and translucent, about 4 minutes. Add the minced garlic and cook for an additional 2 minutes, stirring frequently to avoid burning.
Add the remaining sauce ingredients. Put the cooked sausage back into the skillet with the onions and garlic. Then, add the crushed tomatoes, diced tomatoes (with their juice), Italian seasoning, crushed red pepper, salt, and pepper. Mix everything together. Lower the heat and let the sauce simmer for 20-30 minutes, stirring from time to time, until it thickens and the diced tomatoes have softened slightly. If you're using fresh herbs like basil, add them at the end of the simmering time.
Make the cheese layer. In a medium bowl, combine the cottage cheese (or sour cream), 1 cup of the shredded mozzarella, and the beaten egg. Season with ¼ teaspoon each of salt and pepper. Mix well until all ingredients are thoroughly combined.
Assemble the lasagna. Preheat the oven to 350°F (175°C). Then, brush a 13 x 9-inch baking dish with olive oil. Next, spread 1 cup of the tomato sauce evenly over the bottom of the prepared dish. Place 3 lasagna noodles on top of the sauce. Spread ¼ of the cheese mixture over the noodles, followed by 1 tablespoon of Parmesan cheese. Repeat this layering process 3 more times, ending with a layer of sauce. Sprinkle the remaining 1 cup of shredded mozzarella and the remaining tablespoon of Parmesan cheese over the top.
Bake. Cover the lasagna tightly with aluminum foil and bake in the preheated oven for 30 minutes. Remove the foil and continue baking for an additional 15 minutes, or until the cheese on top is melted and golden brown. Allow the lasagna to stand for 15 minutes before slicing and serving.