If you are using the InnoDB table type in MySQL with one of the latest versions, then you can enable compression in the InnoDB table itself.
It was managed at a low level, so it does not change your requests or anything else. From what I read, the small overhead for compression is offset by a decrease in the IO of the disk and the ability to store more data in the buffer pool in memory. However, you specified a full-text search that InnoDB does not support, so this may not be an option.
There is also an Archive table type in MySQL, but you lose the indexing functionality except for the primary key, which I assume.
Another option is to "pack" the MyISAM table, but I believe that it makes the table read-only and does not compress, as well as other parameters.
source share