All'inizio della Guerra della Quinta coalizione nel 1809, divenne comandante dell'esercito dell'Austria Interna, combattendo contro le forze francesi di Eugene de Beauharnais in Italia. Sotto il suo comando si trovavano l'VIII Corpo d'Armata guidato da Albert Gyulai ed il IX Corpo d'Armata al comando del fratello di questi, Ignác Gyulay. Dopo la significativa vittoria nella Battaglia di Sacile del 16 aprile 1809, il suo esercito avanzò alla volta di Verona. Avendo intercettato alcune forze per assediare Venezia ed altre fortezze, l'esercito di Giovanni venne presto schiacciato dai rinforzi di Eugene. Nel frattempo notizie tremende giungevano per la sconfitta degli austriaci nella Battaglia di Eckmühl, fatto che lo costrinse ancora una volta alla ritirata. Prima di ritirarsi, combatté nella Battaglia di Caldiero tra il 27 ed il 30 aprile. Tentando di controbattere gli avversari ancora una volta, l'8 maggio di quell'anno si scontrò nella Battaglia del Piave. Intenzionato a difendere da solo l'intero corso del fiume, inviò Ignác Gyulay a presidiare Lubiana nel Ducato di Carniola, mantenendo a Villaco in Carinzia le proprie forze. L'avanzata di Eugene si scontrò con le forze di frontiera nella Battaglia di Tarvisio e poi nella Battaglia di San Michele. Costretto a spostarsi al confine nord-orientale dell'Ungheria, Giovanni combatté nuovamente a Raab il 14 giugno 1809, ma le sue armate vennero ancora una volta sconfitte. Ordinatogli di unirsi alle forze di suo fratello, l'arciduca Carlo d'Asburgo-Teschen nella Battaglia di Wagram il 5 e 6 luglio, l'esercito di Giovanni ormai stremato giunse comunque troppo tardi per impedire la sconfitta degli austriaci, fatto che gli valse per l'epoca molte critiche, in particolare quelle di suo fratello che in quella battaglia era comandante in capo alle forze imperiali.