Hello,
I will complete this task for you within two hours. I have worked with Java a lot befora, and as a matter of fact I am a professional Java programmer. I am looking to start a freelancer career, thus I guarantee for quality of my products. For categorising, I would use ListView from JavaFX, for e-mails I would use caching like on web apps, or I would use System registry, what you like more, and for search I would use design patterns. Feel free to contact me for any details.
Yours sincerely,
Dusan Nesic