All string types are equivalent as far as your SQL is concerned; the only difference is how much data they can store. You can see a comparison of the size requirements of all the types
here. Like you say,
VARCHAR can only up to 255 characters.
LONGTEXT can hold up to 4GB of data, assuming you have the available disk space. You're probably fine with a
MEDIUMTEXT, which holds up to 16MB, and it will only cost you two more bytes per record than
VARCHAR. And obviously, using larger fields frees you of worrying about artificially splitting and combining text.
If you're not doing this for the Perl experience but just want a working site, you can steal the GPL'ed Slashcode.