What needs to happen is a simultaneous change to both dramatically improving QB reads as well as improvements to coverage effectiveness to balance it out.
1) Pre-snap reads, dictated by QB intelligence, knowledge of the defensive play, and how much the defense has called a specific play, should be the major deciding factor in the QB targeted route progression. As of now, if I understand correctly, it's randomized with higher weights given to to WR1 on down for all routes of the length called (e.g., if the play call is a long pass and the WR1 is running a short route, the WR1 will not be considered, or will at least have their weight reduced).
What I propose:
1-A) First, the QB will make a check to see if they feel they can read the defensive play. This will be predominantly factored on their knowledge of the defensive play (also, I would suggest increasing the rate at which players learn plays based off their intelligence--as of now it's too slow), with a bonus added for every time the defense has called a particular play that game. If the QB successfully reads the defensive play, they will adjust protection to ensure they have enough blockers if it's a blitz, or tell a RB/FB/TE to chip and then move to the flat if there is more than sufficient protection. If there are any double coverages called, the QB will dramatically decrease the weight for that receiver being the primary target.
1-B) Next, the QB will make a situational check, which will be based primarily off of intelligence and position experience (which I've said before and will say again, should go up WAYYY more slowly). There will also be a bonus if the offensive play is in shotgun, and a detriment if it's under center. Then if the play called is a short pass, or the situation is one that could allow for a short pass (e.g., not third and medium+, not time running out, not fourth quarter and down by 9+), the QB will check to see if any DBs are in off coverage, thus allowing an easier window to sneak in a short pass. If so, each receiver in that situation would get a significant boost to their weight for being the primary target. Alternatively, if a DB is in bump and run with no help over top, and the receiver is intended for a medium to long route, the QB would then give a major priority to that route.
Finally, the standard boost for WR1-5 weighting would be added and the target would be set. Additionally, the QB should likely also take into account match-ups (using your own personal weights), to avoid something cheesy like someone calling double coverages on your star WR1 with two rubbish DBs while slotting their true primary CB1 on your WR2.
What this will accomplish is far more 'intelligent' targets by the QB, avoiding the plethora of throws into double coverage, and allowing teams to defensively really plan around stopping certain players on offense. The other team only has one amazing WR? Try to take him out of the game by double covering all day.
2) Post-snap QBs need to make a decision on routes BEFORE the route finishes. Based predominantly on field of view, defensive play knowledge, frequency of play call, and positional experience. The QB will begin making this check starting immediately if the offensive play is under center, but will be delayed if it's in shotgun (QB has to watch the ball into his hands in shotgun, rather than reading the field). As soon as the QB reads that a WR is in double coverage (or very tight man coverage) against a bad match-up, they should move off the read to their next progression.
3) Make it much more difficult for QBs to throw successfully into double coverage. As of now, it's way too easy for even bad QB/WR combos to make a throw/catch into double coverage. This should be an impressive feat accomplished uncommonly or by especially talented players.
4) Make 'lock-down' DBs a little more effective. 'Elite' DBs are currently giving up too high a percentage of throws.
5) Zone needs another pass over to make it worthwhile. It's still not viable yet.