Nemmeno %1 va bene. Il punto è che %1 è il primo argomento passato al bat. L'argomento al tuo eseguibile NON lo devi passare al bat. Il comando memorizzato nel registry deve avere in sé il %1 in modo che il sistema, in un secondo momento quando si vuole aprire xyz.fab, passerà il path+nome completo del file aperto al posto di quel %1.
Quindi va messo %%1 (sì, hai letto bene, due %). In questo modo non viene interpretato come "espandi %1" ma come "inserisci percentuale uno" nella stringa del comando.
In realtà non è "facile" renderlo molto pulito e portabile, in particolare per il path assoluto che hai messo adesso al tuo eseguibile.
Meglio sarebbe predisporre un classico "installer" ma questo richiede ulteriori conoscenze.
Ovviamente, l'ho detto prima, si avvia java.exe (o javaw.exe su Windows, senza console). Passando ciò che serve. Tutto qui.