Whisk 3 TBS of Flour, 1/2 tsp salt, 1/2 tsp of garlic powder, 1/4 tsp pepper in a bowl. Toss the tofu pieces to coat, shaking loss any excess flour from the tofu.
Add olive oil to a medium pan and heat for 2 minutes. Add the tofu pieces, making sure not to crowd the pan. Tofu should be in a single layer with a little room in between pieces. Let tofu cook 3-5 minutes and then turn. Keep allowing each side of the pieces to brown and continue turning until all sides of the tofu are seared.
*Don’t skip this step! Searing/browning all sides is key to the desired texture for this dish, that of which is a chewy texture rather than a mushy one.
Once the tofu is very seared on all sides, remove it from the pan and set aside on a plate, uncovered.
Add 2 TBS water to the same pan the tofu was cooked in. Add the garlic, mushrooms and tomatoes. Cover and cook for 8-10 minutes, stirring frequently to avoid sticking. Uncover; the mushrooms and tomatoes should be moist but not sitting in a lot of liquid; if necessary, continue to cook uncovered until liquid is reduced to almost none, but not allowing the vegetables to stick to the pan.
Once ready, add all remaining ingredients, except the cooked tofu. Stir and bring contents of the pan to a boil; then add the tofu.
Stir to coat the tofu and continue to let it all bubble in the pan for several minutes. The ideal consistency should be saucy, not runny. Continue to cook while stirring often until desired thickness is achieved. Enjoy as is or enhance it with any of the suggestions in the recipe notes!