While most of it may be a DPS fault, I agree on that, keep in mind that different players think naturally different than you.
I as a healer had moments where tank charged big guy 1, all dps went on big guy 1, and everything else charged me. So I died and eventually they died.
As a healer however it is easiest to adapt. You heal who is hurt. If you aren't hit - you only got 3 others to heal.
With that in mind, and me being a support player by nature, and the fact when you pug your mindset has to be "I am currently grouping with 3 incompetent players, I have to cope" - your job as a tank, healer or dps evolves a tad beyond 'tank, heal or dps'
When I play as a Tank, I don't focus on 1 mob and spam AoE to get a loose hold of the group so the healer won't get hit, no, I purposely hit the targets the DPS hits. 2 dps hitting different targets? Taunt, switch focus, keep threat up on both mobs.
Sure, they could also assist you, but with the previous mentioned mindset - that won't happen. Learn, adjust, ignore them afterwards if they don't listen.
When I play as a DPS, I don't always assist the tank, but when I do it's because the tank is useful. I rather draw aggro of a mob charging the healer and taking damage than mindlessy assisting the tank. It's always easier as a healer to heal someone else other than yourself, solely due to the fact you won't get delayed/interrupted/don't have to worry about dying.
When I play as a Healer and I see alot of spread out dps, I don't go into the usual okay, let's keep everyones health topped to - 'So long they have 1 HP, they can fight', pretty much a standart GW Monk way of healing groups. You don't keep their HP at the top, instead you just use heals to prevent them from dying. That can lead to fights ending with everyone at 10% health, even one or two dead, but the fight is won so to say.
In many cases you just can't rely on your team, thus try to improve yourself to the point of reducing errors you make and reduce the amount of blame you shifts towards others. It's always easier to oversee your own mistakes if others are doing poorly. In the end - if you are at the top of your game and others that have an equal attitude see you, you will in the end forge friendships to like minded people and have an overall easier time to say, find a group, find a guild or just find people to play with.