I'm not sure that is Germany as a whole though, Berlin yes, but in Munich there are not nearly as many spatis, and from the people that I've interacted with, in smaller towns the only place to get a beer in the evening/night is the gas station.
And yes, in general I 100% agree with the local policy that beer is free to buy and consume from age 16. The majority of people (I know) start drinking responsibly by age 20-25 and from the stories I heard from other countries there are quite a few less hospital visits involved.
That is because that is only place to buy anything. You wont buy bread in small town in the night either. Because the stores are closed.