To prepare the lentil mushroom tomato sauce, heat the olive oil in a large pot over medium low heat. Add the garlic, onions, and mushrooms. Sautee until soft, about 3-5 minutes. Add the lentils, salt, pepper, oregano, basil, chili flakes, chili powder, tomato sauce, tamari, red wine vinegar, maple syrup, and water. Stir until combined. Reduce heat and let simmer covered over low heat until the lentils are soft, about 25 minutes.
Meanwhile, prepare the cashew cheese sauce. Add the soaked cashews, water, salt, pepper, nutritional yeast, and garlic powder to a small blender. Blend until smooth. Reserve 1/3 of the mixture for later and set aside. Add the chopped spinach to the remaining 2/3 of the cheese sauce and stir to combine. Set aside.
Prepare the almond parmesan cheese mixture by adding the almonds, nutritional yeast, and salt to a small blender. Blend until you have a crumb-like mixture and set aside.
To assemble the lasagna, spoon the lentil mushroom sauce to cover the bottom of a 9x13 inch baking dish. Layer 3 noodles into the pan, followed by half of the sliced zucchini strips, and 1/2 of the cashew spinach sauce. Repeat by layering more tomato sauce, 3 noodles, the remaining zucchini strips, and the other 1/2 of the cashew spinach sauce. Assemble the last layer by layering the remaining tomato sauce, 3 noodles, and the plain cashew sauce you set aside originally. Sprinkle evenly with the almond parmesan cheese.
Cook covered for 35 minutes, and then uncovered for 10-15 minutes, or until golden brown.
Remove from the oven and let stand before serving. Garnish with fresh basil, optional.