Goals from Sam Finley and Connor Taylor got Rovers back to winning ways.
Rovers made one change to the line-up for the visit of the Bantams. Trevor Clarke came in at left-back, with Glenn Whelan dropping to the bench.
Harry Anderson won a free kick in the third minute. In the absence of usual dead-ball specialist Evans, it was whipped in by Coutts and Hoole flashed a header narrowly wide. Anderson was haring down the wing again a minute later as the Gas looked to make a quick start.
The ball was in the Bradford half for the majority of the first five minutes. Another free-kick came Rovers' way when Collins was hacked down on the edge of the area. A well-worked move saw Finley's shot blocked and the ball eventually cleared.
Trademark trickery from Elliot Anderson saw him evade two challenges before firing a shot wide of Bass' left-hand post.
Bradford's first foray into Rovers territory saw a tame Gareth Evans header easily gathered by Belshaw. Referee Hair awarded a corner to Rovers after 12 minutes as Finley's shot took a slight deflection, but it came to nothing after fouling in the area.
More wing wizardry from Harry Anderson won another corner in the 14th minute, but again Mark Hughes' men were able to clear their lines. Bradford won a corner of their own after 17 minutes. Watt's inswinger was claimed by Belshaw.
With Elliot Anderson pulling the strings in midfield, Rovers came agonisingly close to opening the scoring in the 22nd minute. A sumptuous diagonal from Coutts to Nicholson was laid back to Finley, but the midfielder's drive flew inches wide with Bass well beaten.
Aaron Collins went to ground in the area in the 24th minute, but the referee was non-plussed. Bradford threatened in the 26th minute after a well-worked corner routine saw Walker's effort from the edge of the area fly ten yards over Belshaw's bar. A minute later, Cook's header sailed wide as the visitors looked to find a way into a game that, up to this point, had been largely one-way Gas traffic.
Paul Coutts required treatment in the 30th minute after a foul by Hendrie, which saw the Bradford player booked. Thankfully, the skipper could continue. Rovers again came close to scoring, as Trevor Clarke's cross was left by Collins and Harry Anderson arrived at the back post, but slid his effort wide.
In the 33rd minute, Rovers had strong shouts for a penalty after Finley was dragged to the ground, but play was waved on. Collins then spun beautifully in the area before lashing wide. Despite Rovers' utter dominance, they had nothing to show for it. The striker then scooped over a tricky chance from a Hoole cross.
Harry Anderson was upended in the 39th minute but referee Hair was having none of it. A foul on Nicholson did, finally, bring a free-kick. Elliot Anderson fired straight into the wall, before firing the rebound narrowly over. Fifteen shots, none on target, told the story of the first half.
Bradford made a switch at half-time with Vernam replacing Walker, but it was Rovers who switched off with the half barely a minute old as Pereira fired home to put Bradford 1-0 up. Rovers were stung into action and Harry Anderson forced Bass into a stop, before Collins fired over the bar and out of the ground from distance.
Trevor Clarke saw yellow after 51 minutes for a late challenge, before Rovers again set up camp in the Bradford half for a long spell of possession. Nicholson again found some room down the left, but his shot was charged down. Elliot Anderson then delayed a shot for too long as Rovers continued to press for the equaliser.
A dangerous Clarke cross was deflected behind for a corner, which led to Rovers getting back in the game. Coutts' delivery found Finley and his fierce strike from 30 yards flew past a flailing Bass.
Bass was then called upon to make a brilliant save to stop Nicholson from putting the Gas ahead, diving at his feet. It was all Rovers again, cutting through Bradford at will, but unable to find a killer pass.
Rovers were again appealing for a penalty after 65 minutes, but the referee waved play on before Elliot Anderson's strike was saved by Bass. Luke Thomas replaced Trevor Clarke in the 68th minute. He was immediately in the action, with his cross deflected by a Bradford into the hands of Bass.
Bass was again forced into action, intercepting Harry Anderson's ball with Collins waiting to pounce. Collins was then clear through before O'Connor cynically brought him down, receiving a yellow when a red wouldn't have looked out of place.
Harry Anderson was next to be fouled by an increasingly desperate Bradford rearguard. From the free-kick, Rovers went ahead in the 75th minute. Coutts swung it in, the visitors failed to clear, and Taylor was on hand to bundle the ball home. The goalscorer then received treatment but was fine to continue.
Leon Clarke very nearly put the game to bed in the 89th minute, firing straight at Bass from close range. Bradford won a corner in the 90th minute, with six additional minutes signalled, but James Belshaw calmed Gasheads nerves with a high take.
'Goodnight Irene' could be heard across the city at full-time as Rovers secured the victory.
Rovers' next challenge comes in the form of Tranmere Rovers on Saturday, 9th April (3pm KO).
ROVERS: Belshaw, Hoole, Connolly, Taylor, T Clarke, Coutts (c), Finley, E Anderson, H Anderson, Collins, Nicholson.
Subs: Ward, Saunders, Harries, L Clarke, Loft, Thomas, Whelan.
BRADFORD: Bass, O'Connor (c), Songo'o, Cook, Walker, Gilliead, Foulds, Evans, Watt, Hendrie, Pereira.
Subs: O'Donnell, Ridehalgh, Cooke, Vernam, Kelleher, Lavery, Delfouneso.
REFEREE: Neil Hair
ATTENDANCE: 9,186.