Bring a large pot of salted water to a boil. Add the jumbo pasta shells and cook according to the package instructions until just shy of al dente. Drain the shells and rinse briefly with cool water to stop the cooking. Set them aside to cool slightly.
Heat the olive oil in a skillet over medium heat. Add the minced garlic and cook for about 30 seconds until fragrant. Stir in the chopped spinach and cook for 2 to 3 minutes, until wilted. Remove from the heat and let it cool slightly.
Add the ricotta, cooked spinach, egg, half of the mozzarella, half of the Parmesan, Italian seasoning, salt, and black pepper to a large mixing bowl. Stir until everything is evenly combined and the filling looks creamy.
Preheat the oven to 375°F (190°C). Spread about 1 cup of marinara sauce across the bottom of a 9 × 13-inch baking dish. This helps keep the pasta shells moist while they bake.
Spoon the spinach and ricotta mixture into each cooked shell. Arrange the filled shells in the baking dish with the open sides facing up. Continue until all the filling has been used.
Spoon the remaining marinara sauce around and over the shells. Sprinkle the remaining mozzarella and Parmesan evenly over the top for a cheesy, golden finish.
Cover the baking dish loosely with aluminum foil and bake for 20 minutes. Remove the foil and bake for another 10 to 15 minutes, until the cheese is melted, the sauce is bubbling, and the filling is heated through.
Let the stuffed shells rest for about 5 minutes before serving. Sprinkle with fresh basil and add extra Parmesan if desired. Serve warm with garlic bread or a crisp green salad.