Because I locally sync four-five IMAP email accounts, my Thunderbird profile has become huge, and loading Thunderbird (and performance) has become very, very slow. Also, as my usage of IMAP server space increases, I am sure there will come a day when I need to delete files from the server that I might wish to keep (or if the IMAP provider fails/I don't renew/&c.).

I am wondering if I there is a way to solve this by creating two new profiles. The first new profile would be for my IMAP email accounts, and would retrieve current messages and shows messages for, say the past three years, or since January 1, 2014. Separately, the second new profile would preserve all older emails for those accounts locally, and not sync with any IMAP server (to avoid accidental deletion of old messages when deleted from the server). Annually, I would move emails from the new profile to the old to keep the current profile smaller.

And for the first new profile, Is there a way to ensure Thunderbird only retrieves message from a certain date and newer, but not older ones?

If you want to create a separate profile and move downloaded messages there to archive them see http://kb.mozillazine.org/Profile_Manager and http://kb.mozillazine.org/Importing_folders . However, another possibility is to just archive the old messages outside of your profile per one of the utilities mentioned in http://kb.mozillazine.org/Archiving_your_e-mail such as the ImportExportTools add-on or mbox2xml. ImportExportTools is very popular and actively maintained. Its the obvious choice. However, one of the reason why I like mbox2xml is that you can read the archived messages using just a browser, and its easy to append more mail to it later on. It also supports command line arguments so you could use windows scheduler to periodically run a batch file to append just the newer messages to a previous export.