Molto carino!
Ecco come ho fatto seguendo gli aiutini:
1) Un omomorfismo $\phi:X \to G_1 \times G_2$ è identificabile ad una generica coppia di omomorfismi $\phi_1:X \to G_1, \phi_2:X \to G_2$(se si vuole per la proprietà universale del prodotto). Pertanto abbiamo la formula $h(X,G_1 \times G_2)=h(X,G_1)\cdot h(X,G_2)$. Pertanto poichè $h(X,\cdot)$ è, come funzione del secondo argomento, invariante su classi di isomorfismo, otteniamo che $h(X,G)^2=h(X,H)^2$, pertanto essendo dei naturali nonnegativi, otteniamo $h(X,G)=h(X,H)$.
2)Osserviamo che abbiamo $ h(X,Y)=\sum_{N \lhd X} i(X/N,Y) $, se si vuole per il teorema dell'omomorfismo. Quindi procedendo per induzione su $|X|$, otteniamo per il passo 1) $\sum_{N \lhd X}i(X/N,G)=\sum_{N \lhd X}i(X/N,H)$, e, per passo induttivo, tutti gli addendi tranne $i(X/\{e_X\},G)=i(X,G)$ a sinistra e $i(X/\{e_X\},H)=i(X,H)$ a destra, sono a due a due uguali. Ne consegue che tali due addendi debbono essere uguali, ossia $i(X,G)=i(X,H)$. La tesi segue per induzione(ah si il passo base col gruppo banale è vero, e dopo ritorna scegliendo N=X).
3)Quindi abbiamo che $i(G,H)=i(G,G)>0, i(H,G)=i(H,H)>0$. Quindi esiste un omomorfismo iniettivo da G ad H ed uno iniettivo da H a G. Quindi le cardinalità sono uguali(essendo i gruppi finiti), e tali morfismi sono anche suriettivi, dando luogo ad isomorfismi tra G e H. O basta solo una delle due formule, perchè che le cardinalità sono uguali è chiaro anche dalle ipotesi, essendo $|G|^2=|H|^2$, quindi è sufficiente la presenza di un solo morfismo iniettivo che essendo poi sempre i gruppi finiti e di pari cardinalità per le ipotesi, sarà anche suriettivo.