Preheat the oven to 350 degrees F.
Bring a large pot of water to a boil over high heat and salt it generously. Add the lasagna noodles and boil, stirring occasionally, until al dente, about 8 to 10 minutes. Drain.
Meanwhile, heat the olive oil and garlic in a saucepan over medium heat until the garlic begins to brown. Add the spinach, season with salt and pepper and stir until the spinach dries out and the garlic is fragrant, about 3 minutes. Cool.
Mix the cottage cheese, goat cheese, Parmesan/Pecorino, 2 cups of the mozzarella cheese, lemon zest, nutmeg, cayenne, and cooled spinach in a bowl. Season with salt and pepper, to taste. Stir in the egg.
Cover the bottom of a 9- by 13-inch casserole with a thin layer of Tomato Sauce. Cover with 3 of the noodles placed side-to-side, but not overlapping. Top with a 1/4 of the cheese mixture and about a half cup of Tomato Sauce. Season lightly with salt and pepper. Repeat to make 2 more layers. Cover lasagna layers with remaining noodles, dollop remaining cheese mixture on top. Drizzle with remaining Tomato Sauce, then scatter the remaining 2 cups mozzarella on top. Bake, uncovered, until the lasagna is hot and bubbly, about 40 to 45 minutes. Let lasagna stand for 10 minutes before serving.
Put the olive oil and garlic in a saucepan and cook until fragrant, 2 minutes. Add tomatoes and salt. Break up the tomatoes into small chunks with a wooden spoon and bring to a boil over high heat, lower heat to a brisk simmer, and cook until thickened, about 30 to 40 minutes. While sauce cooks, tear basil leaves into small pieces. Remove the sauce from the heat, stir in the basil, and adjust seasoning with salt and pepper, to taste.