The solution is with the selectors.
If this was about football and a player had two bad games and was dropped there would be 100's of new players in each football team, playing a game or two then being dropped.
Playing test cricket is like any other job, it takes time to get trained up to that level.
They need to select three players and keep them there for a year or two, that way they will be able to learn test cricket over a period of time and become better.
Yes they will lose a few games, but over the period of that year or two the three will get better, getting dropped just makes the next hopefuls in line feel like they are losers before they start, they will be programmed to fail before they even start.
Dropping someone just because they fail once or twice is the wrong way, how many times has Cook or Root been out for a small score, quite often, but they don't drop them because they know they have reached a level of skill that every so often they will play a great innings, backed up by middle order batsmen who when Cook and Root fail add enough to keep the side in the game.
Ask yourself this, how long did it take you to learn your job to a standard that you could do it without making mistakes, it's called on the job training, or does it not apply to cricket?