The result moves Sheffield United up to 15th in the table and to within six points of the play-off places, while Portsmouth slip to 21st, one spot from the drop zone.
Defeats for both sides in their previous games prompted changes for the tie at Fratton Park, with Kalvin Phillips given his first start for the Blades after his loan arrival from Manchester City.
The closest his side went to breaking the deadlock in the first half was Hamer’s 15th-minute shot from a tight angle that hit the foot of the post.
And while Pompey’s Bishop managed to find the back of the net from close range soon after, home fans were left incensed when their celebrations were cut short after the finish was ruled out because of a foul in the build-up.
The decision only added to Pompey’s frustrations in a first half in which Adrian Segecic and Zak Swanson tested Blades’ keeper Cooper.
John Swift and Alli threatened for the hosts in the second half, while Patrick Bamford tested Nicolas Schmid and Brooks sent an effort just wide at the other end.
As the game was seemingly heading towards a stalemate, Tyrese Campbell did well to squeeze a cross to the back post for Brooks to score his fourth goal in five games to win it for the visitors.