St. Francis (17-9, 11-2 Northeast) closed the game on a 14-4 run to win their fifth straight and stay two games ahead of Bryant (9-4) for first place in the conference.
Brent Jones added 10 points and 10 assists for the Terriers while Cannon recorded his fifteenth double-double of the season, tied for fourth best in the nation.
Wagner (8-16, 6-7) took its only lead of the game at 37-36 on Corey Henson's 3-pointer early in the second half. But Lowell Ulmer answered with a 3 that sparked a 20-5 run for the Terriers, ending with a 56-42 lead at 9:44.
Romone Sanders scored 13 of his 16 points over the next seven minutes to keep Wagner within striking distance, but the Seahawks got no closer than 69-62.