The midfielder, who failed to score a single goal last season, found the top corner with a perfectly struck right-footed shot in the 115th minute of a closely fought clash at the Memorial Stadium.
Two minutes later Cardiff substitute Frederic Gounongbe hit a post with a shot from 10 yards out when he should have scored – but the Sky Bet Championship side were already out.
The first half of normal time saw precious little goalmouth action. Sean Morrison did well to snuff out the danger when Rovers striker Matt Taylor’s header almost found Stuart Sinclair on 28 minutes.
Cardiff went closest with a Joe Ralls free-kick that found the side-netting.
The second half was little better, with neither goalkeeper making more than routine saves. Morrison blocked a Taylor shot, while Craig Noone fired inches past a post for the visitors.
The first half of extra-time saw Rovers keeper Steve Mildenhall save at full stretch from Cardiff substitute Anthony Pilkington.
The second half brought a similar save from Simon Moore to deny Taylor. Cardiff were briefly reduced to 10 men when Simon O’Keefe left the pitch with an apparent arm injury.