Jordon Talley scored all 11 of his points in the second half for UNCW (17-11, 12-5 Colonial Athletic Association) and C.J. Gettys finished with 10 points.
The Seahawks never trailed and scored 16 straight to open up a 19-3 lead with 11:30 left in the first half.
James Madison cut its deficit to eight when Dimitrije Cabarkapa hit a 3-pointer 47 seconds before the break, but Craig Ponder answered with a 3 of his own, igniting a 10-0 run which overlapped halftime and UNCW led 41-25 with 17 minutes to play.
James Madison (18-12, 11-6), which had its five-game win streak snapped, trailed by at least 13 the rest of the way.
Ron Curry led the Dukes with 23 points.