Someone asked me about getting enough iron and protein in a vegetarian diet with milk, but no eggs. It's difficult to get enough iron or protein without meat, fish, or eggs, so I’m not surprised that the questioner’s son has low hemoglobin. My answer: try to eat beans at most meals (together with fruit or veggies for vitamin C to help you absorb the iron). You’ll need to eat all sorts of beans, like lentils (dal), kidney beans (chili), garbanzos (hummus), etc. to get some variety, but in particular try to eat soybeans (edamame) or tofu. Here’s a quick recipe that kids like:
Crispy Tofu Tenders
Cut open tofu package with a knife and drain out water. Cut tofu into slices about 3/4 inch thick, and drain on several layers of paper towel. Cover with additional paper towels, and press lightly to dry. Leave to dry for a couple of minutes. Cut slices into cubes. Heat about one tablespoon of olive oil in a nonstick pan, or two tablespoons in an iron frying pan. Fry tofu until it is crispy and brown on at least two sides. Serve immediately with soy sauce for dipping. An alternative dipping sauce is mayonnaise with a little catsup mixed in.
P.S. It’s very unlikely that you’re getting enough vitamin B12 if dairy products are your only animal foods. Take a multivitamin&mineral with B12.