There's two reasons for those hours.
- Timezones, as mentioned by several people here, you can mentally remove 1 hour for it to make more sense, Portugal is right next to us and their times make a little bit more sense. That doesn't justify all the numbers shown though, and that because...
- They are fucking made up. Maybe if you didn't go to touristic hubs you would find more normal timetables. Work starts at 8 so breakfast joints open at 7 if early, people eat at 2, they have dinner from 8 to 9, 10 if it's eating out. At 11 people are preparing to go to bed in most of the country.
We do have family lunches and dinners occasionally, but that's not an everyday thing, not even a weekly thing. Maybe a yearly thing. Sorry for not having huge houses and doing them at restaurants I guess?
Restaurants stop serving around 4 and start again after 7-8 because they need to clean between the lunch and dinner service. Wild concept I know. Also it's not feasible to keep the kitchen staff there when nobody goes to eat.
The way you present the country is pretty racist to say the least.