Fair grabbed six rebounds and helped turn back a late St. John's rally with three jumpers from the right baseline over the final 6:53.
Ennis, meanwhile, went 10-of-10 from the free throw line as the Orange (10-0) remained unbeaten.
Jerami Grant chipped in 14 points.
The Red Storm (6-3) dropped a ninth straight against Syracuse despite 21 points from D'Angelo Harrison.
Rysheed Jordan added 13 points and Jakarr Sampson provided 12 for St. John's.