Lets do the math.
Lets say you have 10 new hires on a center who cannot file 9.5 grievances.
Management can simply carpet bomb them with 12+ hours of work, too many businesses, too many pickups etc. These drivers are new and easily intimidated. Plus they may have children at home that they would like to see before bedtime. They cant file and they don't want to spend an extra hour away from home, sitting in the truck or in a restaurant someplace. So, they work through their lunch.
10 drivers x 5 skipped lunches per week equals 50 hours of free labor for UPS.
The same 10 drivers who are allowed to enter a half hour lunch on their timecard means only 25 hours of free labor for UPS.
The company is not going to easily give up on the opportunity to screw its workforce out of an additional 25 hours of pay every week, which is why management is always in favor of mandatory one hour lunches.
I have a life outside of this job, and I want to try and go home at a decent hour and get paid for the time that I work. So I usually take a half hour lunch.