Preheat the oven to 375°F.
Cook the lasagna noodles according to package instructions until al dente. Drain and set aside.
In a large mixing bowl, combine ricotta cheese, 1/2 cup Parmesan cheese, 1 cup mozzarella cheese, chopped spinach, garlic powder, salt, black pepper, and red pepper flakes (if using). Mix until well combined.
Spread a thin layer of heavy cream on the bottom of a 9x13 inch baking dish.
Place a layer of lasagna noodles over the cream.
Spread half of the ricotta mixture over the noodles, followed by half of the pesto.
Repeat the layers with another layer of noodles, the remaining ricotta mixture, and the remaining pesto.
Top with the final layer of noodles.
Pour the remaining heavy cream over the top layer of noodles and sprinkle with the remaining mozzarella and Parmesan cheese.
Cover the baking dish with aluminum foil and bake for 25 minutes.
Remove the foil and bake for an additional 15 minutes, or until the cheese is bubbly and golden brown.
Let the lasagna cool for 10 minutes before slicing and serving.