Il 38enne, che gioca in Svizzera nel tentativo di ritrovare la forma in vista degli Open di Francia, ha recuperato lo svantaggio ottenuto nel primo set per conquistare una vittoria per 5-7, 7-6 (7/2), 7-6 (7/2) dopo tre ore e cinque minuti di gioco.
Djokovic si unisce a Jimmy Connors e Roger Federer come unici giocatori con un secolo di titoli del tour.
"Ho dovuto lavorare per questo, questo è certo. Probabilmente è stato più vicino alla vittoria per tutto il match rispetto a me", ha detto Djokovic, che è il primo uomo a vincere titoli per 20 anni consecutivi.
"Ho solo cercato di resistere... Questo è ciò che accade a questo livello. Pochi punti l'hanno decisa, un match incredibile... e sono felicissimo di conquistare i 100 trofei qui".
Per l'ex numero uno del mondo si tratta del primo trionfo in un torneo dopo la medaglia d'oro olimpica conquistata la scorsa estate contro Carlos Alcaraz ai Giochi di Parigi.
Prima del torneo di Ginevra, Djokovic aveva perso entrambi i suoi precedenti incontri sulla terra battuta, contro Alejandro Tabilo e Matteo Arnaldi, rispettivamente ai Masters di Monte Carlo e Madrid.
Ma Nole ha deciso di giocare in questo evento su terra battuta nel tentativo di ritrovare la forma in vista dell'inizio del secondo Grande Slam dell'anno, domenica al Roland Garros, dove il serbo punterà al record del 25° trofeo in singolare.
È stato il primo torneo di Djokovic dopo la separazione dall'allenatore e vecchio rivale Andy Murray, ma non ha mostrato alcun malessere.
Il polacco Hurkacz, ex numero sei del mondo e ora 31° in classifica, è ancora in attesa del suo primo titolo dall'aprile 2024.
"È davvero stimolante il modo in cui ti comporti dentro e fuori dal campo", ha detto Hurkacz rivolgendosi a Djokovic.
Il tre volte campione del Roland Garros inizierà la sua avventura agli Open di Francia contro l'americano Mackenzie McDonald lunedì o martedì.
Dopo un inizio serrato, Djokovic ha avuto due palle break nel quinto game e Hurkacz ha lottato per mantenere il primo set sul servizio.
L'incontro sembrava avviarsi verso un tie-break, finché Djokovic non ha ceduto nel dodicesimo game, facendo seguire a un dritto in disimpegno un doppio fallo sul set point per dare a Hurkacz un vantaggio di un set.
Il secondo set ha seguito un andamento simile al primo, ma questa volta Djokovic è stato in grado di tenere il servizio sul 6-5 per forzare un tie-break con un ace.
Nel tie-break il serbo ha trovato il suo ritmo e ha messo a segno quattro punti consecutivi per portare la partita al set decisivo.
Ma Djokovic ha immediatamente ceduto il servizio nel primo game del terzo set, servendo un doppio fallo quando era 40-30 e poi sbagliando un rovescio lungo sul break point.
Hurkacz ha poi messo a segno tre punti consecutivi per avvicinarsi al titolo, salvo poi crollare nell'ottavo game con due errori non forzati e un doppio fallo, regalando a Djokovic la possibilità di tornare in finale.
Il polacco si è ripreso per assicurarsi il tie-break decisivo in un teso 12° game.
Ma è crollato nei momenti cruciali con una serie di errori nel tie-break, lasciando che Djokovic raggiungesse un'altra pietra miliare della sua illustre carriera con un ace.