I've been thinking about all of this, and realise that, throughout my life, there have been quite substantial changes in the way I refer to different meals.

I was brought up to Breakfast, Dinner, Tea (occasionally, supper after that). When I went to school, the mid-day meal served in the canteen was always "School Dinners" (and pretty horrible they were, too ) but many of my school-mates brought "lunch" with them, which was to be eaten at the mid-morning break - about 10.30 ish. They then went on to eat "School Dinner", so it was not a substitute - it was additional fodder.

When I started work, however, the firm's canteen served Lunch from midday to 1 pm - and this was just as substantial a meal as School Dinner, although much more palatable. If I then had a cooked meal in the evening (which I usually did) that was called Dinner. All of the above took place in London. "Tea" was a meal that I rarely took - usually when invited out to someone's home, or at my own home on a Sunday. It consisted of bread & butter with jam, fish- or meat-paste, and a cutting cake (i.e., not individual small cakes - one big one that was shared out) which was either a sponge- or a fruit-cake.

I still call my meals breakfast, lunch, dinner now that I've moved North, but have become very accustomed to hearing local people refer to the main, evening meal as their tea. The light luncheon that they take to work is known as "baggins" in these parts.
Dinner is the mid-day meal on Sunday, or what you have if you go out to a restaurant.