Bonzie Colson recorded his ninth double-double of the season for Notre Dame, finishing with 18 points and 14 rebounds.
Vasturia's fallaway one-handed in the lane with 20 seconds to play put the Irish up by 73-68 and they hit four straight free throws down from there to seal the win.
Donovan Mitchell scored 20 points to lead Louisville. The ACC's leader in steals, Mitchell added five steals to go with five assists and four rebounds.
Quentin Snider added 12 points for the Cardinals.
While the Irish missed six straight field goals, Louisville scored four consecutive points to tie the game, 68-68 with two minutes to play. Notre Dame only got the one field goal from there and did the rest of their work from the line.
The best free throw shooting team in the country, the Irish shot 22 of 25, including 15 of 16 in the second half.
Farrell's 3-pointer with 16:16 left capped a 9-2 Notre Dame run and pushed the Irish lead to nine, but Louisville answered with seven straight, a spurt that included two offensive putbacks by Ray Spalding.
Louisville came in as the top rated team in adjusted defensive efficiency according to Ken Pomeroy, but the Irish had 42 points by halftime and took a five-point lead into the break.
The Cardinals also came in sixth in the nation in blocked shots at 6.6 per game, and finished with seven, six of them from center Anas Mahmoud.
Louisville: Despite recent big wins over Kentucky and Indiana, the Cardinals are now looking at an 0-2 hole in the ACC standings. After one more road contest at Georgia Tech, they'll try to get right at home with three straight at the Yum Center.
Notre Dame: Irish coach Mike Brey has talked about the importance of one-game win streaks in the ACC, but at 2-0 now, they'd like to see how far this streak can go. Following a home game with Clemson, three straight on the road will be a tough test.
Louisville: The Cardinals travel to Atlanta to face Georgia Tech on Saturday.
Notre Dame: The Irish host Clemson on Saturday.