Preheat the oven to 400°F (204°C).
Sauté the chopped onion in a drizzle of olive oil in a medium frying pan until translucent and glossy, about 5–7 minutes.
Add the 2 chopped garlic cloves to the pan and cook 1–2 minutes until fragrant.
Add the chopped tomatoes, tomato puree, paprika, oregano, basil, salt, and pepper. Simmer for about 5 minutes until slightly thickened to make the marinara sauce.
Prepare the cashew white sauce by blending soaked cashews, 1 clove garlic, 1/2 cup dairy-free milk, 1 Tbsp nutritional yeast, nutmeg (if using), and salt and pepper until very smooth and creamy.
Press the firm tofu to remove excess water, then crumble it into a mixing bowl with your fingers.
Stir the cashew white sauce into the crumbled tofu until well combined to form the tofu-ricotta filling.
Finely chop or pulse the fresh spinach and fold it into the tofu-cashew mixture, mixing until evenly distributed.
Spread a thin layer of the marinara sauce across the bottom of a 9×7×2-inch (23×18×5 cm) oven-safe dish.
Layer the lasagna as follows three times: pasta sheet, marinara sauce, and a layer of the spinach-tofu ricotta. Repeat to use 3 layered sets to fill the dish.
Finish with a top layer of marinara sauce and sprinkle the dairy-free grated cheese or vegan Parmesan (or extra nutritional yeast) evenly over the surface.
Bake the lasagna in the preheated oven for 30 minutes, until heated through and the top is slightly browned; remove and let rest a few minutes before slicing.