You can eat on the train's restaurant coach but it's expensive. But he can simply hop out at one stop, go shopping for food or to a restaurant and then hop on the next train. Usually you don't even need to leave the train station for that stuff (unless it's a village or small town).
"He travels first class, sleeps on night trains, has breakfast in DB lounges and takes showers in public swimming pools and leisure centres, all using his unlimited annual railcard."
For washing your clothes there are plenty of laundromats in cities, for visiting the doctor or dentist, you make an appointment, and then plan your travels so that you are in the right city at the right time. It's really not that complicated.
With the Bahncard 100 he can also use the public transport in cities, so it's not like he's limited to walking distance of the train stations.
...also, his overall cost of living is apparently around 10k Euros a year. The unlimited train ticket is just 3/4 of that (7714 Euros).