Adams was 7 of 13 from the floor with five 3-pointers and 11 of 11 from the line with six rebounds and four assists. Marcus Posley scored 19 points, Denzel Gregg had 13, Dion Wright added 12 and Derrick Woods chipped in with 11 for the Bonnies (9-3).
It was tied at 43 at halftime and Davidson snuck out to a six-point lead after Watkins' 3-pointer 4:27 after the break. The Bonnies trailed until 4:54 left, when Gregg hit a 3 to make it 78-75.
A 12-1 run put St. Bonaventure up by 10 points with 2:09 left, and the Bonnies made 11 of 12 from the line from that point to ice it.