That PFF stat had him 2nd in the league at yards after contact, so I think 3.9 ypc is actually stellar behind this line. As a rookie he was at 4.2 ypc but everyone else (Bell, Riddick, etc.) was at 3.2 ypc. So his ypc has actually been pretty impressive when taken into context.
I respectfully disagree about top end speed capping his ypc, though. Top end speed might make the difference between a 50 yard run and an 80 yard run, but realistically, it rarely ever matters. First off, 50 yard runs are very rare. Having the elusiveness to make a DB miss you at 10 yard past the LOS is something that will gain you an extra 10 yards maybe every 20 carries. But gaining that extra 30 yards on top of a 50 yard run maybe comes into play once every 100 carries. And even then, sometimes just being wide open is all you need - I think I mentioned in this thread that I once saw LenDale White score an 80 yard TD. If you catch the defense just right, any NFL player has the speed needed to house it. Top end speed is probably the most overrated part of a RB's game just due to the infrequency in which it comes into play.
I mean, I could be wrong about these gut they don't strike me as really fast guys: Bell has been at 4.9 ypc twice, Shady has been over 5 ypc three times, Alfred Morris hit 4.8 ypc with 335 carries as a rookie. Hell, at age 29 Jerome Bettis once hit 4.8 ypc. As a rookie he hit 4.9 ypc. And back to my favorite comp: Westbrook hit over 5 ypc twice in his career and has a career average of 4.6 ypc.