Heat 2 tablespoons of oil in a wok or sauté pan over medium-high heat. After 90 seconds, when the oil is hot, stir fry the diced tofu for 6-7 minutes until crisp and lightly golden brown all over.
Toss the fried tofu in a bowl and mix with the minced garlic, tamari, and white vinegar. Set aside.
Heat 4 teaspoons of canola oil in a Dutch oven or thick-bottomed pot over medium heat. When the oil is hot, sauté diced onion, grated ginger, minced garlic, and sliced bird’s eye chilies for about four minutes until fragrant.
Add diced tomato, salt, and black pepper. Continue to sauté for about 6 minutes until the tomato starts to break down.
Pour in green split mung beans, stock or water, soy sauce and vegan fish sauce. Bring to a boil over high heat, then reduce heat to medium-low and simmer covered for 30 minutes until mung beans are tender. If the consistency gets too thick, add a little water to get it to the consistency you prefer.
Stir in the washed and chopped mature spinach leaves.
Cook until the spinach wilts. Just before serving, stir the coconut milk into the soup which will quickly bring it to a comfortable eating temperature, and will not give the coconut milk a chance to curdle.
Serve the soup in bowls garnished with the fried tofu pieces, fresh chives, fried shallots (optional), thinly sliced bird’s eye chili, and finely minced red onion.