If the charging network was built properly it should be able to stress test itself. Working in the games industry and dealing with online services in the past we don't wait to release the game and let the users break it due to a sheer overload on the servers. We stress test the hell out of the servers before launch otherwise you have a pissed off customer.
The whole business model needs to change. The charger needs to identify if a car is plugging into a charger it shouldn't and pop up a message to move it to a slower charger if one is available. So a Bolt owner plugging into a 350Kw would be told to gtfo of the spot if there were plenty of 150Kw's free. When the charger hits 80%, double or triple the cost per KW. When it gets to 90% quadruple it. Make the idle fees higher. Car companies should also allow the cable to be disconnected when 100% charge is reached. Lucid for example keeps the cable locked even when the session has ended.
The locations should also be designed better. For a 4 charger location, 8 parking spots should be allocated. When a location is full you drive around to the other side of the charger (facing its back) so when the other car is finished you're ready to take the cable and plug in. Avoids people fighting or figuring out who's next in line. Also why it's important to allow someone to disconnect the cable at 100% or when the session is finished
Yes, users are selfish and lazy so the onus is on the charging companies to hit them where it hurts. When you hit someones back pocket 9 times out of 10 they make the mistake once and get the hint! I work in IT, spoon feeding people only goes so far.