Rennes won their fourth consecutive league match to occupy the first Europa League spot on 57 points and are one ahead of French Cup winners Olympique Lyon, who have a game in hand.
Feret gave the hosts the lead when keeper Guillermo Ochoa deflected a Jires Kembo shot on the woodwork only to see Rennes playmaker head the ball in on the rebound in the 27th minute.
Razak Boukari doubled their advantage with five minutes to go as he bent the ball in the top right corner from outside the box before Yacine Brahimi ran through to seal the victory in stoppage time following a Feret pass.
Ajaccio, a point and a place above the drop zone, were reduced to 10 men after just 11 minutes when Samuel Bouhours was sent off for a harsh tackle on Jonathan Pitroipa. Ilan's 89th minute goal was of no use.
St Etienne stayed in contention for a European berth as Pierre-Emerick Aubameyang scored his 14th goal of the league season to earn his side a 1-0 home win over lowly Dijon.
Les Verts are sixth on 56 points while Dijon lie 16th on 34 points, one place above Ajaccio but on the same points.
At the bottom, basement side Auxerre kept their thin hopes of avoiding relegation alive after they thrashed fellow strugglers Stade Brest 4-0 at home.
Auxerre, who have been playing in Ligue 1 since 1980 and featured in the Champions League group stage last season, are three points from safety.
Brest sacked coach Alex Dupont this week after they lost six of the last seven games and stay 18th on 33 points while Sochaux are a spot below and on the same points having lost 3-0 at home to midtable Bordeaux as they were reduced to nine men.
Second-placed Paris St Germain visit third-placed champions Lille in the late game as Carlo Ancelotti's men try to stay on the coat-tails of leaders Montpellier, 1-0 winners at Toulouse on Friday.