You must be getting the 2000+ characters from somewhere (text file, dialog item, etc). If you are using a text file, the text could be broken up into several lines that are short enough for mIRC to handle, then sent to the server with /sockwrite commands (and no new-line characters, -n switch or $crlf). The server shouldn't care if you send the text in several lines, like this:

sockwrite SOCKET this is a very
sockwrite SOCKET long sentence
sockwrite SOCKET which is being
sockwrite SOCKET sent as separate
sockwrite -n SOCKET lines.

The method you use to send the data (multiple sends, loops, etc) depend on the data and the way it is stored.

-genius_at_work