I really do think ISPs should operate based on some sense of duty cycle. Part of the problem with the word "unlimited" is that it's still a holdover from the dial-up days.
For example... Guarantee me "unlimited" 5Mbps internet at a 20% duty cycle. That's 300GB a month. The cap is there by convention, but the internet is still "unlimited". Alternatively, give me 8640 "Bandwidth minutes" a month with the option to auto-throttle if I might go over, or disconnect for the month at 8640.
Unfortunately, most customers are in fact stupid, and a data cap is often the best way to say "We let you use our internet resources at up to NN% duty cycle per month"