Если swap используется, это убивает производительность к чертям всегда.
Если есть подозрения на «что-то еще», то можно попробовать разделить пулы процессов обработчиков скриптов для каждого из сайтов (по пулу на сайт или пачками, методом половинного деления, например. В зависимости от того, как быстро вам нужно найти виновника и как много ресурсов у вас есть) и с помощью того же iotop мониторить нагрузку.
Конечно, вам не будет сильно интересно постоянно смотреть в iotop, поэтому можно впилить его в
Cacti или
Zabbix (мы Cacti используем, довольны). Через день на графике увидите виновника.
Как разделять пулы — очень зависит от того, какой у вас язык программирования и как скрипт запущен. Например, в связке nginx+php5-fpm достаточно разделить пулы fpm, и настроить upstream'ы nginx для каждого из сайтов соответственно.