Drexel (6-2) ended a 17-game losing streak to the Wildcats in a series that dates to 1924. The Dragons, who have faced Villanova just twice since 1990, extended their overall winning streak to four.
Curtis Sumpter had 31 points and 10 rebounds for Villanova (7-2), which had its five-game winning streak halted.
Elegar scored on follow-up with 4:12, breaking a 71-all tie, and Drexel held the lead the rest of the way.
Mason sliced through the lane and scored on a runner, and Elegar hit a jump hook to give the Dragons a 77-71 lead with 2:44 remaining. Drexel's Chaz Crawford grabbed two crucial offensive rebounds in the final minute to help protect a three-point lead. Mason added a pair of free throws with 13.8 seconds left to help put the game out of reach.
Drexel didn't back down Villanova in the back-and-forth game. Villanova seemingly took control in the first half with a 15-0 run for a 41-33 lead. Shane Clark started and ended the run with a 3-pointer.
Sumpter scored 12 points in the first half, while Elegar led Drexel with 10.
No. 1 hoops prospect Shaedon Sharpe soars for alley-oop
Kentucky commit and No. 1 player in ESPN's 2022 recruiting rankings Shaedon Sharpe gets up high to throw down an alley-oop despite being fouled.
Toppin is 'loving' what new transfers bring to Kentucky
UK forward Jacob Toppin explains how the new transfers have provided the necessary spark to be successful and put a subpar 2020 season in the rear-view mirror.
Daimion Collins dunks over Oscar Tshiebwe at Big Blue Madness
Kentucky's Daimion Collins soars over teammate Oscar Tshiebwe during the Big Blue Madness dunk contest.