Nigdy nie słyszałem, żeby móc stworzyć drugi, osobny wątek obsługi zdarzeń. Po to jest jeden, żeby w gui nie dochodziło do deadlocków albo concurrent modification. Po prostu obliczasz, co musisz obliczyć w osobnym wątku, a następnie dodajesz do kolejki komunikatów już istniejącego wątku prośbę o odrysowanie. Poczytaj o EventQueue. Możesz też zainteresować się klasą SwingWorker, moim zdaniem udostępnia API o większych możliwościach,nie mniej przy odrobinie pracy to samo można uzyskać z EventQueue.
SwingWorker będzie najlepszy. W doInBackground wszystko liczysz, publishem uaktualniasz wizualia. + swojego SwingWorkera (lub SwingWorkery) najlepiej odpalaj przez ExecutorService.