MySQL always writes simple temporary/memory tables to disk (both tmp_table_size and max_heap_table_size are set to 8GB)
Okay, in case anyone stumbles upon a similar problem and Google directs them here:
I don't exactly figured out why, but sort of figured out what causes it, phpMyAdmin was the culprit.

Issuing the same commands directly in the mysql command line did not cause the temporary tables to be written to disk.
Now, I also have phpMyAdmin on my development machine and it's not an issue here. But I'm running PHP as a module in Apache, whereas on the production server it's IIS with PHP running as FastCGI. So some configuration or limitation must've caused this, not exactly sure.