Add the tofu pieces to the bowl and sprinkle in the cornstarch, Italian seasoning, garlic powder, onion powder, 1 teaspoon salt and 1 teaspoon pepper. Toss gently until the tofu is thoroughly coated in the cornstarch and seasonings.
Heat 1 tablespoon of olive oil in a large sauté pan over medium-high heat. Once the oil is hot, add the tofu and cook, flipping occasionally, until all sides are golden and slightly crisp around the edges, 15 to 20 minutes. Remove and set aside.
Heat the remaining tablespoon in the same sauté pan over medium-high heat. Once the oil is hot, add the mushrooms in an even layer and cook undisturbed for 3 to 4 minutes until the bottom sides are browned.
Stir the mushrooms and continue cooking, stirring occasionally, until dark brown and slightly crisp around the edges, 4 to 5 more minutes.
Add the onion and cook, stirring often, until translucent, 2 to 3 minutes. Then add the garlic and thyme, and cook until fragrant, another 30 seconds to 1 minute.
Stir in the dry orzo, season with the remaining teaspoon of salt and pepper, and cook for 1 to 2 minutes, stirring frequently, until lightly toasted.
Pour in the broth, non-dairy milk and Marsala wine, scraping up any brown bits on the bottom of the pan and stirring to combine.
Bring to a simmer and nestle the reserved tofu pieces on top.
Reduce the heat to medium-low, cover and continue to simmer until the orzo is tender, 12 to 15 minutes.
Turn off the heat and let it rest covered for 4 to 5 minutes.
Garnish with fresh minced parsley and shredded parmesan, and enjoy!