Julius Randle added 17 points for the Wildcats (10-3), who went on a 13-3 run midway through the final 20 minutes to put away their intrastate rivals and claim a third victory in four games.
They made the surge without the star freshman, who left with cramping early in the second half.
Aaron Harrison netted 10 points.
The Cardinals (11-2) got 19 points from Russ Smith but couldn't avoid their first loss since Nov. 24 to North Carolina.
Chris Jones supplied 18 for Louisville.