Thanks for the post, but I'm still fighting this issue.
formID.toQueryString() produces the error: myFrm.toQueryString() is not a function
in this case, i create a reference to the form using:
var myFrm = document.getElementById('frm'+myKey+myItm);
var query = myFrm.toQueryString();
(the alert was here to check that I got the form)
It looks like toQueryString is designed to create a query string from a hash. Seems like that would still end up hitting the 2048-char query string limit and my text often contains an average of 2428 characters with a current max of 14,604 characters