TWO goals by defender Leon Cartres gave manager Whitey Anderson's team a valuable victory at Clandeboye Park.
This puts the Mallards one point behind leaders Newry City, with both teams having played seven matches.
For the home side it was their first home defeat in the League, and Frankie Wilson's charges now find themselves trailing the leaders by six points.
A fast paced opening saw Cartres take advantage of some slack defending as he pounced on 13 minutes to pushed a low corner from the left by lively winger Jason McCartney past Bangor keeper Paul Cairnduff and inside the near post from a couple of yards out.
Bangor were back on level terms just five minutes later when a stinging 25 yard free kick by Gareth McLaughlin was too hot to hold for Mallards keeper James McGrath on his line, and Ben Browne got a touch to the rebound to allow home striker Andy Morrow to slam the ball into the top of the net from a yard out.
Play went from end to end in an open game as both teams looked for a second goal.
On 43 minutes the alert Cartres again caught the home backline napping when he got on the end of a Chris Curran cross from the right after the winger's corner had been blocked.
With the Bangor defence at sixes and sevens Cartres rose to head home from close range at the far post.
Bangor threw everyone forward in the second half, but were unable to break down a resolute Mallards side, with subs Jonny Bowers (73 mins) and Dwiane Beattie (80 mins) coming closest for the home side.
Bangor: Cairnduff, Youle, Watterson, Hylands, Scates, McLaughlin, Browne, Morrow, G. Bowers, McQuillan, G. Beattie subs Rafferty (replaced G. Beattie 41), J. Bowers (replaced Browne 46), O'Gormley (not used), D. Beattie (replaced McQuillan 69), Harper (not used)
Ballinamallard United: McGrath, McConkey, Keohane, Cartres, Stafford, Kee, Curran, Hutchinson, Feeney, Crawford, McCartney subs Higginbotham (replaced Feeney 51), Liggett (not used), Kelly (not used), Haveron (replaced Crawford 88)