Hoffenheim moved up to fourth place with 14 points ahead of Hamburg SV on goal difference.
Promoted Kaiserslautern had the best of the first half and should have gone ahead when they were awarded a penalty only for Srdjan Lakic to see his effort saved by Oka Nikolov.
Eintracht, eighth with 12 points, then took the lead on the stroke of halftime when Gekas applied an easy finish to Pirmin Schwegler's cross.
Gekas added the second in the 67th minute following a botched clearance by Rodnei and Alexander Meier completed Frankfurt's win in the 83rd minute.
Moenchengladbach, looking for their second win of the season, went ahead through Raul Bobadilla in the 12th minute but Hoffenheim replied after halftime through Demba Ba and Sejad Salihovic, with Moenchegladbach's Anderson putting through his own goal in between.
Moenchengladbach, 15th with six points, had Venezuela midfielder Juan Arango sent off for fighting in the 62nd minute and Sebastian Schachtan for a late tackle in the 81st.
Mohammadou Idrissou pulled one back in stoppage time.