The header folding is already implemented. You can try it for yourself by saving a MailMessage
with long header, then look into produced data.
I think the problem "Headers too large" is caused by length of the unfolded header itself. So, you have 2 possibilities:
Don't include so many recipients into mail headers. Correct me if I am wrong, but if you send an e-mail to thousands of recipients, you don't want to share addresses of all recipients between each other.
Save space by omitting recipient's display name (just include only SMTP address). This will not solve the issue, but increase the limit of recipient count.