Preheat the oven to 375 degrees F. Spray three baking sheets with cooking spray.
Arrange the eggplant in a single layer on the prepared sheet trays. Brush the eggplant on both sides with 2 tablespoons of the oil and sprinkle lightly with salt and pepper. Bake until soft, about 25 minutes.
Heat the remaining tablespoon of oil in a large high-sided skillet over medium-high heat. Add the onion, carrot and celery and cook, stirring, until soft, about 6 minutes. Sprinkle with salt and pepper. Add the garlic and red pepper flakes and stir until fragrant, about 1 minute. Add the turkey and cook, stirring and breaking up the meat with the back of a wooden spoon, until browned, about 6 minutes. Add 1 teaspoon salt. Stir in the tomatoes, bring to a simmer, lower the heat to medium-low and cook until thickened, about 30 minutes. Turn off the heat and stir in the basil.
Combine the ricotta, tofu, egg and 1/4 cup Parmesan in a medium bowl and smash with a fork until combined. Place the spinach in a clean kitchen towel and squeeze out all the liquid you can. Add to the bowl and mix until incorporated.
Ladle one-quarter of the sauce into the bottom of a 9-x-13-inch baking dish.
Place 6 pieces of eggplant on top of the sauce. It's okay if they overlap. Spread half of the tofu-cheese mixture over the eggplant and top with another one-quarter of the sauce. Sprinkle with one-third of the mozzarella. Repeat the layers. Add a final layer of sauce and sprinkle with the remaining mozzarella cheese and Parmesan. Bake until bubbling and golden on top, about 35 minutes. Let rest 10 minutes before serving.
Recipe courtesy of Bobby Deen