Willis' layup gave Ohio a 10-point lead with 2:21 to go and Stevie Taylor's two free throws in the final minute proved to be the difference.
The Zips roared back. Aaron Jackson, Reggie McAdams and Jake Kretzer each drilled 3s for Akron in the final 1:03, cutting the lead to one, 83-82, with eight seconds left, but Deji Ibitayo missed a shot at the buzzer.
Willis was 12 of 18 from the field, 6 of 8 from distance, while pulling down seven boards and dishing off five assists. Maurice Daly Ndour added 16 points for Ohio (8-12, 3-6 Mid-American Conference).
Ibitayo finished with 21 points to lead Akron (15-7, 6-3), which now has lost three straight conference road games.