The result sends the Ligue 1 champions six points clear at the top of the table, but Ibrahimovic's 59th-minute strike should not have stood.
Ibrahimovic's goal, his 26th of the season, was the stroke of luck that PSG, who named new £20m signing Yohan Cabaye on the bench, needed after a below-par performance in the opening hour.
Their first-half display had only yielded a couple of half-chances, both of which were wasted by Lucas, who could also have played in Edinson Cavani on 27 minutes when he instead opted to go it alone.
They required an error from the assistant referee to take the lead as Bordeaux played Lucas offside, only for Ibrahimovic's tap-in to count, and PSG nearly doubled their advantage moments later.
Lucas was again the creator for Javier Pastore, who thumped against a visiting defender from 12 yards.
Cabaye then made his 67th-minute introduction and he came within inches of a debut goal when he struck the post, after being released by Ezequiel Lavezzi's dink over the top of Bordeaux's defence.
The result was secured, and the controversy over the opening goal lessened, when Alex found the net one minute from time, guiding the ball into the corner after a flick-on from a set piece.