I would definitely suggest you start to separate your GUI components into different files, it will help in the long run. As far as best practice goes, I think it is better than cluttering a file with multiple classes even if they are related to each other. The only benefit I can see is you have only 1 file to open to see all the GUI code.
As you said, having a long class (3500ish lines) can make it troublesome to maintain. Organize them in proper packages too while at it. Like making a gui package, or whatever name you feel is appropriate, and so on.
Good advices are given in the answers of the questions tagged user-interface and organization