Steve Guinan should have given Northampton a ninth-minute lead but with just goalkeeper Simon Eastwood to beat he shot over.
Luke Guttridge also went close for the home side, cutting in from the left after 15 minutes but firing into the side netting.
At the other end Scott Neilson was off target from 10 yards while Boulding saw his effort tipped onto the bar by Chris Dunn.
Bradford's Simon Ramsden broke the deadlock five minutes after the restart when his deflected shot from the edge of the box completely wrong-footed Dunn after being set up by Luke O'Brien.
Michael Boulding doubled the visitors lead four minutes later, converting Lee Bullock's knock-down from Jonathan Bateson's cross.
Guinan headed against a post on the hour before Alex Dyer reduced the arrears in the 77th minute after being set up by Andy Holt and in the final minute Johnson headed home the equaliser from Ryan Gilligan's free kick.