У меня был похожий опыт, и я сделал так, чтобы JEditorPane отображал только окно размером с страницу в документе 400 КБ (если это возможно в вашей ситуации), а затем вручную решал проблемы с прокруткой.
Таким образом, я получил много интересных функций от виджета без значительного замедления (потому что виджет видел только часть текста), но мне пришлось написать множество кода прокрутки и постоянно обновлять содержимое виджета по мере перемещения пользователей.
Кроме того, я делал это так, чтобы я мог просматривать файлы 7G, которые не помещались в памяти, которую у меня все равно было.