Dinner originally had a meaning like "biggest meal of the day". That used to be midday, culturally shifted to the evening. In some places and some contexts the language followed but not in every case. In southern England dinner is typically in the evening but we still say "school dinners" for subsidised lunches and "dinner ladies" for the women who serve them.
Supper has always meant evening as far as I know but referring to the evening meal as supper became a marker first of the upper class and then of pretension. Hearing someone say supper is quite jarring for me.