Further information:
For each of the 12 mongod servers, data files and log files are stored on the same 500gb gp3 EBS volume capable of 3000 IOPS and monitoring is showing an average of 1300 IOPS with the occasional spike up to 2200. The four CPUs are steady at around 12% and 40% of the 32GB RAM allocated is free with less than 1% swap file use.
So it doesn’t feel like a hardware problem, meaning I’ve probably configured something incorrectly. But I don’t know what to look for.