Peel and devein the shrimp, keeping every shell. Put the shells in a pot with the stock, bring to a simmer, and let them cook for 10 minutes. Strain out the shells and return the stock to the pot.
Add the lemongrass, galangal, lime leaves and chilies to the stock. Simmer for 5 minutes so the aromatics open up.
Stir in the nam prik pao until it dissolves, then add the mushrooms and tomatoes. Simmer for 3 to 4 minutes until the mushrooms soften.
Drop in the shrimp and cook for 2 to 3 minutes, just until they turn pink and curl into a loose C shape. A tight curl means overcooked.
Take the pot off the heat. Stir in the fish sauce, sugar and evaporated milk, then the lime juice. Taste and adjust: more fish sauce for salt, more lime for sour.
Ladle into bowls, top with cilantro, and serve. The lemongrass, galangal and lime leaves stay in the pot for flavor but are not meant to be eaten.