Definisci un Document personalizzato (ridefinendo il metodo insertString) e poi lo imposti sul tuo JTextPane:

codice:
import javax.swing.text.AttributeSet;
import javax.swing.text.BadLocationException;
import javax.swing.text.PlainDocument;




public class MyDocument extends PlainDocument {
    
        public void insertString (int offset, String  str, AttributeSet attr) throws BadLocationException {
             if (str == null) return;
        
             char c = str.toCharArray()[0];
             if (c != java.awt.event.KeyEvent.VK_BACK_SPACE) {
                   super.insertString(offset, str, attr);
             }
        }    
}