The bottom club were reduced to 10 men after Stefan Payne was sent off at the end of the first half for appearing to headbutt his own team-mate, former Bradford winger Filipe Morais.
The result ended Grimsby’s eight match unbeaten run – seven of them draws.
After an even first half-hour, the home side began to test the Grimsby defence and after 33 minutes home stopper James McKeown made the first serious save either goalkeeper had to make when he dived full length to keep out Gareth Evans’ shot on the turn.
Teenage right-back Finn Cousin-Dawson then had a fierce shot blocked in a crowded goalmouth two minutes later as Bradford stepped up the pressure.
Andy Cook then saw his diving header deflected for a corner after the Grimsby defence failed to clear Conor Wood’s left-wing cross and this led to Bradford taking the lead in the 42nd minute.
The visitors could only partially clear the corner and when Evans returned the ball into the goalmouth, Anthony O’Connor scored with a diving header from close range as Morais flicked the ball towards his own goal.
Then after the one minute allowed for stoppage time, Payne, apparently annoyed with Morais for a misplaced pass, appeared to headbutt but his own team-mate and was shown red card by Sheffield referee James Bell as the players left the field.
Grimsby made a determined bid for an equaliser in the second half, their best effort coming in the 74th minute when Bradford goalkeeper Richard O’Donnell did well to block a fierce shot from substitute Harry Clifton.
Wood came close to increasing Bradford’s lead with a shot that hit the crossbar but just the single goal clinched maximum points as the home side extended their unbeaten run to four matches.
Support The Yorkshire Post and become a subscriber today. Your subscription will help us to continue to bring quality news to the people of Yorkshire. In return, you’ll see fewer ads on site, get free access to our app and receive exclusive members-only offers. Click HERE to subscribe.