Cut tofu into 16 rectangles shaped like husky dominoes (each about 1 in. wide, 1 1/2 in. long, and 1 in. thick). Put tofu in a wide, shallow bowl. Mix 1 tsp. salt with 2 cups very hot or just-boiled water and pour over tofu to just cover. Let sit 15 minutes. Transfer tofu to a double layer of paper towels set on a plate and let drain 10 minutes.
Meanwhile, heat 2 tbsp. oil in a medium nonstick frying pan over medium heat. Fry shallots, stirring occasionally, until light golden, 9 to 10 minutes. Add garlic and curry leaves and fry 2 to 3 minutes, stirring constantly, until light and crisp. Add curry powder, remove from heat, and stir to aromatize spices. Using a slotted spoon or skimmer, transfer seasonings to a bowl, leaving most of fragrant oil in pan.
Blot tofu dry. Add more oil to pan, if needed, to film bottom and heat to medium-high. Fry tofu, turning once, until golden, 4 to 5 minutes (it won't be crisp).
Lower heat slightly and return all but 1 tbsp. shallot mixture to pan. Add coconut milk, bamboo shoots, and palm sugar. Bring to a simmer and cook 2 to 3 minutes. Add bok choy and cook until tender, 3 to 5 minutes. Gently stir in fish sauce.
Transfer to a serving bowl and top with herbs and rest of shallots. Serve with rice.
*Find curry leaves at Indian markets. Palm sugar—a dark unrefined sugar made from palm-tree sap or sugarcane juice—has a musky, slightly molasses-like flavor. It usually comes in hard discs; slice off shavings with a sharp knife before measuring. Find it at well-stocked grocery stores and Asian or Latino markets (in Indian markets, it's called jaggery, and in Latino markets, piloncillo).
Servings Serves 4
* Percent Daily Values are based on a 2,000 calorie diet. Your daily value may be higher or lower depending on your calorie needs.