This is what I mean with better player; all of the top players are very wary of the threat Del Potro represents regardless of his form or anything else, he's someone who can really shake things up far more than anyone below the top 4. Despite struggling with his health all the time, he has shown that at his best he can mix it up with the top 4 and split wins with them, which no one else really has - that makes him the fifth best player in the world.
Imagine he was only
good against the top 4, but everyone else could beat him with ease. By your reasoning he would still be fifth in the world even though everyone below him could beat him.