Gunter burst onto Oliver Norwood’s pass and slotted past keeper Elliot Parish in the 115th minute, to eventually settle an evenly-contested tie which was goalless after 90 minutes.
Nick Blackman was denied superbly at point-blank range by Colchester keeper Sam Walker early on.
And Walker pulled off another excellent save on the half hour to keep the U’s level, diving low to his right to push away Danny Williams’ goalbound effort.
Hal Robson-Kanu’s curling effort flashed just wide but Richard Brindley registered Colchester’s first serious shot on target just before half-time with a long-range effort that nestled in keeper Ali Al Habsi’s arms.
Walker denied Stephen Quinn 12 minutes after the break and injured himself in the process, resulting in him being carried off with what appeared to be a recurrence of a knee injury.
Williams’ long-range effort flew wide in the final stages of normal time and Alex Wynter almost put through his own net in extra-time when his attempted clearance clattered the crossbar.
Al Habsi then denied Alex Gilbey, before Gunter’s late, late winner.