Cook your rice noodles according to the package instructions. Drain and set aside.
In a large bowl, mix together the pork, herbs, 1 tablespoon fish sauce, and ¼ teaspoon salt. Use a cookie scoop or your hands to form into ping pong ball sized meatballs.
In a large dutch oven or pot over medium-high heat, warm the olive oil. Once the oil is hot and shimmering, add the meatballs to the pot and cook, undisturbed, until deeply browned, about 3-5 minutes. Flip and cook on another side until browned, about 2-3 more minutes. Transfer to a plate. If you have a lot of fat in the pan, discard all but 1 tablespoon (this will depend on your pork. If using chicken, you will want to add 1 tablespoon oil to the pot before adding the shallot).
Reduce the heat to low, add the shallot and remaining ¼ teaspoon salt to the pot, and cook for 1 minute, stirring constantly. Add the garlic, ginger, mushrooms, and tomatoes and cook for 1 more minute, stirring constantly. Stir in the water, soy sauce or tamari and remaining 1 tablespoon fish sauce. Return the meatballs to the pot. Bring to a boil, then simmer, covered, for 8-10 minutes, or until mushrooms are cooked and tomatoes have burst open.
Stir in the spinach, cover, simmer until wilted, about 2 minutes. Remove from heat and stir in the lime juice. Taste and add more salt (or soy sauce), if needed.
Add rice noodles to your bowl and top with the soup and meatballs. Top with plenty of fresh herbs and a squeeze of lime.