Orient were unchanged from the weekend’s 1-1 draw with Port Vale, with goalscorer Dan Kemp continuing in the front three.
In wet and windy conditions, Orient tried to make the most of the first half advantage, with direct balls looking for Danny Johnson.
Defenders Paudie and Anthony O’Connor were alert to the danger though, and restricted The O’s dangerman to few sights of goal.
It was Dan Kemp who looked the most likely to make something happen for The O’s, and after some exciting runs, had perhaps The O’s best chance of the game.
After an energetic forward run by McAnuff, Kemp was found on the left hand side, where he took his shot past his defender and fizzed an effort just wide of the post.
The O’s finished the half strongly with a flurry of free-kicks in dangerous positions, but couldn’t test Hornby in the Bradford goal – with Kemp, McAnuff and Wilkinson all striking into the wall.
The second half started with a gilt-edged opportunity for the hosts, as Danny Rowe was found unmarked in the penalty box.
It was in unusual circumstances, as it appeared Sam Hornby’s goal-kick had found Danny Rowe 20 yards clear of the defenders.
As Rowe watched it bounced, he tried an elaborate volley to beat Vigouroux, but left it too late and could only hit it straight at the O’s stopper.
Bradford responded not long after with the introduction of Andy Cook and Ollie Crankshaw, and it wasn’t long before the two of them were in the mix.
Crankshaw worked himself into a great position in the box, and must have thought he’d fired the Bantams ahead with a low drive into the bottom left hand corner, only for Lawrence Vigouroux to make a fantastic stop low down to his right.
It wasn’t long until Crankshaw was in the mix again – this time at the heart of a big decision for referee James Adcock.
Crankshaw, inside the penalty box, appeared to be hauled down by Adam Thompson and the referee pointed to the spot, with Callum Cooke poised to take.
His penalty was unstoppable – powered into the roof of the net, and with ten minutes to go, Bradford were ahead.
Almost straight after, Orient had their own shout for a penalty through substitute Tristan Abrahams.
Abrahams had scuffed a volley as it dropped to him in the box, but was then subject to a strong challenge from O’Connor – as his forearm appeared to strike Abrahams across the face as he won his header.
The referee wasn’t interested though, and after four minutes of added time, Bradford held onto a three points that saw them leapfrog The O’s in the table.
Bradford City: Hornby, O’Connor ©, Canavan, O’Connor, Cooke (Donaldson 89’), Vernam (Stevens 75’), Evans (Crankshaw 63’), Watt, Sutton, Wood, Rowe (Cook 63’).
Subs unused: O’Donnell, Cousin-Dawson, Scales.
Yellows: Sutton 38’, P O’Connor 62’
Leyton Orient: Vigouroux, Cisse (Dayton 88’), Happe, McAnuff ©, Wilkinson, Kemp (Abrahams 75’), Brophy, Akinola, Freeman, Thompson, Johnson.
Unused substitutes: Sargeant, Widdowson, Coulson, Turley, Young.
Yellows: Cisse 72’