ok, mi sono documentata ed ho fatto alcune prove ed ho scoperto "l'inghippo" dei metodi suggeriti da andbin: lo spostamento avviene sempre "relativo all'icona" infatti se per il metodo setVerticalTextPosition utilizzo SwingConstants.TOP me lo mette nell'icona in alto, SwingConstants.CENTER mette il testo nel perimetro dell'icona al centro e SwingConstants.BOTTOM lo mette in basso.
allora preciso che l'icona è 48x48 mentre il pulsante è 90x74.
ora,nonostante sia stato sconsigliato da andbin, provo a crearmi nel bottone una tabella con il codice html...speriamo bene.