Weaker players in particular will benefit from repetitive practice. 3 people run down field, weaving to catch short downfield passes. A cuts downfield toward the middle. There are several more complex variations, but they aren't discussed here. A brief illustration.
Cones are on two corners, a thrower and marker on the other corner.
Receiver swings back and forth between the two cones, catching a throw near one cone, throwing it back, running to the other cone, catching and throwing it back, repeating this for a couple of minutes. To make this go smoothly, the marker shouldn't mark hard at all. In fact, he should just stand still, crouched down slightly, with arms out. Receiver has to stretch to both sides for catches, so the drill works on quick right and left-handed catches. Thrower has to quickly throw both forehands and backhands.