Как оптимизировать / кэшировать кучу тяжелых запросов к MySQL?
1) Проверить индексы на таблицах, с такими объемами у вас все должно летать.
2) Кэширование используется на часто вызываемых запросах, где не критично отставание от точных хранимых данных в пределах некоторго заданного временного интервала, например список последних новостей на сайте изменяется не часто, а запрашивается постоянно, есть смысл хранить его в кеше хотя бы 15-30 минут. А у вас ситуация ровно обратная - запрос делается редко, и данные нужны актуальные.
3) к п.1 нужно соответственно добавить проверку, как работают запросы и используются индексы, explain в руки и вперед.
Короче. Проблему решил так.

- Услышал про индексы, пошел разбираться.
- Наткнулся на длинную серьезную статью по этой теме: https://ruhighload.com/%D0%98%D0%BD%D0%B4%D0%B5%D0...
- Изучил от и до; приписка в конце положила под стол.
- Как опытный, крайне смекалистый программист-любитель я практически моментально и до последнего слова все не понял, поэтому от нудной теории перешел сразу к веселой практике.
- Начал тестить; в процессе научился работать с БД через консоль.
- Как оказалось, волшебная таблетка - создание индекса на поле ID для таблицы просмотров.

$sql = 'CREATE INDEX id ON wp_post_views(ID)';
$wpdb->get_results($sql);

* здесь ID - это ID поста, к которому относится просмотр, а не primary key, как может показаться

Заткнул я это на хук смены темы (надеюсь я правильно понял, что этот индекс не нужно обновлять вручную?). Залил патч на сервер и, - о чудо! - реально все летает. Там, где раньше грузилось за 10-15 сек стало грузить за 0.5-1.

Mission Complete.

P.S. Всем спасибо, кто помогал. Но впредь сильно не матюкайтесь.. Не все такие крутые гуру, как вы. Некоторые учатся в процессе. Отсюда и шишки.