This is simply incorrect. CDNs are not prioritized on any ISP network. CDNs work because they have a shorter route to the end user, not because they have a higher priority.
ISPs should not and do not apply QoS in their core for VoIP or anything else when it's part of generic Internet traffic. It's the end users responsibility to QoS police VoIP or other traffic on their WAN interface. The ISP just shifts the bits.
Not privatizing traffic does not break CDNs nor customer QoS. Neither of these things have anything to do with net neutrality.
> But even then, how do you draw a bright line between "deliberately degrading", "not giving an advantage to", and "not doing anything to address bandwidth problems when they arise"?
It's pretty obvious how you draw that bright line. Don't prioritize and don't congest interfaces.
> How would you suggest writing a regulation that doesn't break CDNs and similar, and that can tell the difference between "deliberately hurting" and "not helping"?
Easy. As I already wrote, forbid prioritizing and saturation of network interconnects.
> How will that regulation adapt when people come up with new ideas to make the web faster?
It does not need to when done right, as explained above.
> One angle I could imagine working: limiting the ability of one company or family of companies to run both an ISP and network services via that ISP. Still hard to write something robust, though.)
Nothing hard about it. It's called functional separation and it's a widely applied remedy to the anticompetitive nature of telecom markets in other countries.