Food contamination is a real issue. It helps that everyone tested positive for the exact same substance in basically the exact same concentration, because usually it’s better to design your doping protocols tailored to each athlete’s body and training. Just intuitively, it’s not exactly standard practice to have your entire Olympic-level team shoot up on steroids at the same exact time.
Nevertheless, the pool isn’t slow: the US set the 1500m free and 4x100 medley women’s records. Meanwhile, WADA has been testing Chinese athletes far more than everyone else.
Edit: just to be clear, I don’t think his spread is even unreasonable in context. Phelps swam a 22.93 50m and a 47.51 100m (1.65s pace difference). Pan swam a 21.92 50m and a 46.40 100m (2.56s pace difference). For reference, Dressel did 50m in 21.04 and 100m in 46.96… but while Dressel is basically specialized at training for short stints, Pan also trains for 400m events so his back half is expected to not fall off as hard anyway (not to the level of Michael “my lactic acid doesn’t build up” Phelps, though).