Heat the oil in a deep 12-inch skillet with a lid (or similar vessel that can go on the stove top and in the oven) over medium-high heat. Add the onion and cook until soft, about 5 minutes. Add the garlic and cook for another 30 seconds, stirring. Add the marinara sauce, tomatoes, 1 teaspoon Italian seasoning and let cook while preparing the filling.
In a large mixing bowl, combine the ricotta cheese, remaining teaspoon Italian seasoning, 2/3 cup Parmesan cheese, egg, artichoke hearts, spinach or arugula, salt, and pepper. Mix well.
Remove 3 cups of the sauce from the pan. Add 3 or 4 lasagna sheets and spread 1/3 of the ricotta cheese filling over the lasagna sheets in a thin layer (an offset spatula is great for this). Top with 1/3 of the mozzarella cheese. Add half the remaining sauce, spread into an even layer, top with more lasagna sheets and half the remaining ricotta cheese filling and half the remaining mozzarella cheese. Repeat the layers with remaining ingredients.
Cover the pan and adjust the heat so that the lasagna bubbles gently around the edges. Cook for 30 minutes. Meanwhile, set the top rack of the oven 6 – 8 inches from the heat source and preheat the broiler to high.
Remove the lid from the lasagna, sprinkle the top with the remaining 1/3 cup Parmesan cheese and broil for 3 – 4 minutes or until browned on top. Sprinkle top with fresh basil leaves, if desired.