Brandon Young scored 23 points and Cleveland Melvin added 20 for DePaul (2-1), which will meet Texas Tech in a consolation game Friday.
Williams had a key rebound basket, making it 86-83, after a pair of missed free throws by Julian Welch with 13 seconds left.
Krys Faber had a rebound basket in the final second after DePaul's Moses Morgan missed a potential game-tying three-pointer.
Young hit a jumper to get DePaul within 84-83 with one minute left. After Minnesota's Austin Hollins missed a 3 with the shot clock winding down, Melvin was called for charging with 13 seconds remaining while driving toward the basket.
Williams had a layup and Andre Ingram made two free throws as Minnesota, which trailed by as many as 12 points, went up 72-71 when 8:03 left. An in-close basket by Mbakwe extended the Golden Gophers' lead to 76-73 at the 14-minute mark.
Minnesota took an 83-79 lead on Mbakwe's slam with three minute to go.
Baskets by Andre Hollins and Ralph Sampson III during the opening minute of the second half got Minnesota within 43-37.
After a DePaul timeout, Young responded with consecutive 3-point plays to put DePaul ahead 49-37.
After Minnesota made it 51-45, fast-break dunks by Charles McKinney and Melvin reinstated the Blue Demons' 10-point lead.
Young and Melvin both had 10 points, helping DePaul take a 43-33 halftime advantage. While the Blue Demons went 5 of 10 from 3-point range, Minnesota missed all four of its attempts.
Young hit a 3 to put DePaul up 38-26 with 4 minutes left.
DePaul played its first game since Nov. 14 due to class schedules.