The article is about the author's impressions. He was served dinner at 5 PM -- this is what he said about it: "The attendant delivered my dinner at 5 p.m., earlier than I expected. When I asked to have it later, the attendant said that she would bring it anyway and that I could just hold on to it."
So it looks like there was an exchange -- he wanted it later, she said "I'm bringing it at 5 PM and you can hold it until later." If these facts are correct, it's not a question of "is 5 pm early or late for dinner?" It's a question of, is this good or acceptable service? No and no. Obviously if he wants to eat at 7:00 the dinner will be cold. His dinner time is his choice, and flex dining was supposed to allow for different times for different folks. He was completely in the right here.
I lived in New York City for decades. Dinner time is 8 P.M. (well, in Manhattan). People work late, go to the gym, go home and change, etc. and then go out to dinner at 8 PM or later. Of course, some people eat earlier. They are known as "early birds" and there are often specials for them.
America today is primarily urban. Hence if we want to establish a generalized "dinner time in America," we wouldn't look to rural areas or the "many people" who eat at 5 PM. A quick google search of "What is US dinner time" comes up with this: "Typically people eat dinner between 6:00 PM and 7:30 PM. Dinner time fifty years ago people ate between 5:00 PM and 6:30PM but now due to work and commuting schedules dinner time for many of us has shifted to eating later." (2017) Another entry computes America's "exact" dinner "time" to 6:22 pm.