SELECT 180 records took 2 seconds
On an ordinary spinning drive, you can get about 100 IOPs.  If all 180 rows needed to reach off-row to get items and none needed for template, then that is 180 + miscellany to get SELECT * 180 times.  That's about 2 seconds.

SSD drives would be faster.

Compressing, in the client, those two columns, then storing them in BLOBs, would shrink things a bunch.  This would probably lead to fewer IOPs.

It seems like populating memcached would be a one-time action, so the 2 seconds would not be a big deal?