The restaurants don't want people thinking their prices are 30% higher than they actually are. When Grubhub adds restaurants without permission they raise prices and often list items that aren't on the menu. Consumers order and blame the restaurant when things aren't perfect. You can see why the restaurant would be mad?
I think this is the grey area. I don't see any inherent problem with any of
* hiring someone to place an order at a restaurant for you and deliver it.
* that service adjusting the consumer facing prices for individual items since they're really getting food from the delivery service and the restaurant is just a supplier.
* that service using the name, logo, and menu of the restaurant for the purposes of advertising that they can deliver there. Lots of businesses will be like "we buy $this_part from $here -- here's your options."
* the delivery service having no business relationship with the delivery provider.
If you're gonna fix anything it would be requiring that it's clear that you're not ordering direct from the restaurant and the delivery service takes all the responsibility but that's pretty minor.
The tech world equivalent is upstream maintainers getting bug reports from downstream distro builds of their software and we're normally not like "we must regulate that Debian has a business relationship with all OSS they package."
Does this same logic apply to something like Visa concierge service (or other procurement company), where they show you the brand item and store logo from where it comes, and then go buy it for you? Why can they do that, but not Google?
I think there's a significant distinction between "I'd like to order food from restaurant X, I'll Google them" versus a concierge service. I can't speak for Visa's, but Amex's has never been misleading in this sort of fashion.
The listing fee mentioned in this Ars article says it is only if you have a relationship, which makes sense.
> If the restaurant has a relationship with the food delivery company, it gets charged a fee.