Preheat your oven to 350 degrees Fahrenheit. This ensures that your dish starts baking at the right temperature.
Prepare a 9 x 13 deep casserole dish by spraying it with nonstick cooking spray. This will prevent the pasta from sticking and make cleanup a breeze.
In a large pot, boil water and add the 16 ounces spaghetti noodles. Cook according to the package directions until they are al dente. Remember, you want them slightly firm as they will continue cooking in the oven. Once cooked, drain and rinse with cold water to stop the cooking process. This step is crucial for achieving the perfect texture.
While the noodles are cooking, heat a 12-inch skillet over medium-high heat. Add the 1 pound Italian sausage to the skillet and cook until there’s no pink remaining, about 7 to 10 minutes. Make sure to break it up into small pieces for even cooking. Once browned, drain any excess fat.
Next, add the 1 medium chopped onion and 1 tablespoon minced garlic to the skillet with the sausage. Sauté for about 2 minutes until the onion turns translucent and fragrant.
Stir in the 36 ounces marinara sauce, ¼ cup tomato paste, 2 teaspoons Italian seasoning, ½ teaspoon salt, and ¼ teaspoon ground black pepper. Mix everything together and let it simmer for a couple of minutes to meld the flavors before removing it from the heat.
In a large mixing bowl, whisk together 2 large eggs, ¾ cup grated parmesan cheese, and 5 tablespoons melted unsalted butter. This mixture will help bind the pasta together and add richness.
Add the cooked spaghetti noodles to the egg mixture. Toss gently until every noodle is well coated.
In your prepared baking dish, layer half of the spaghetti noodles at the bottom, followed by half of the sausage sauce and half of the 3 cups shredded mozzarella cheese. Repeat the layers with the remaining noodles, sauce, and cheese.
Cover the dish with aluminum foil and place it in the preheated oven. Bake for 30 minutes, then remove the foil and bake for an additional 5 to 10 minutes. You want the cheese on top to melt and start to brown, adding a beautiful golden color to your dish. If you're feeling adventurous, you can turn on the broiler for a minute or two to get an extra crispy top.
Once done, take the dish out of the oven and let it sit for 5 to 10 minutes. This resting time allows the flavors to settle. Before serving, sprinkle 1 tablespoon chopped fresh basil on top for a fresh burst of flavor.