I believe the problem was from un-closed connections to the same files from a previous step in my analysis. I'm running this on a Linux system, so I tracked the open file connections as the loop was running using
watch ls -l /proc/${PID}/fd
The connections opened and closed just fine, but I saw some old connections laying around from my previous analysis. I closed them and everything run just fine!!!