Saivet found the back of the net shortly before the hour to put Bordeaux, who kept a clean sheet for the 12th time in 22 league games, on 35 points, 10 behind leaders Lyon.
Nice, who suffered their first league home defeat since the opening round of matches last August, dropped to sixth and trail Bordeaux on goal difference.
The home side enjoyed possession but Argentine striker Dario Cvitanich was muzzled by the Bordeaux central defence.
Bordeaux broke the deadlock in the 58th minute when Saivet was set up by Jaroslav Plasil on the right flank and fired past David Ospina with a crossed shot.
Five minutes later, teenager Neal Maupay's canny lob landed on Cedric Carrasso's bar as Nice pushed hard for an equaliser.
Bordeaux, however, stayed true to their reputation as a highly defensive team and held on until the final whistle.
Earlier, Pierre-Emerick Aubameyang scored his first goal in 1111 minutes in all competitions as St Etienne beat Bastia 3-0 to take seventh place on 34 points.
Later on Sunday, Paris St Germain will reclaim top spot if they beat Lille at the Parc des Princes.