Ky Bowman led Boston College (9-18, 2-12) with 29 points and Mo Jeffers had 12.
BC had sliced it to 78-76 on Bowman's two free throws with just under a minute to play, but Beachem grabbed an offensive rebound and was fouled on the ensuing possession. He hit both free throws with 24.1 seconds to play.
The Fighting Irish trailed by 10 points early in the second half before outscoring BC 21-3 over a 4:50 span.
Consecutive 3s from Farrell 29 seconds apart tied it at 59 before Colson's putback jam on their next possession gave them their first lead of the game with just under 13 minutes to play.
The Eagles had led by 13 points and posted a season-high for a first half with 49 points to open a 10-point lead at intermission. They shot 58.6 percent (17 of 29) and also went 9 for 10 from the free throw line.
Notre Dame: The Fighting Irish need to take advantage of a softer portion of their schedule — with games coming up against North Carolina State, Georgia Tech and another with BC to have a chance to make a run to the top of the ACC.
Boston College: Like a number of games this season, the Eagles showed spunk but couldn't close out a win. With leading scorer Jerome Robinson (19.4) struggling down the stretch, they really looked challenged offensively. He finished with 11 points on 3-of-12 shooting.
Notre Dame: The Irish climbed back into the poll this week after being out for one week. A loss to BC and some weaker opponents coming up would have made it very hard to get back in the next few weeks.
Colson's dad — also Bonzie — was an assistant at BC under Al Skinner for nine years.
BC forward Conar Tava wore No. 30 instead of his usual No. 2 for the second half after playing the final few minutes of the first with a large tear down the left side.
Notre Dame: At NC State on Saturday.
Boston College: At No. 17 Florida State on Monday. The Eagles are 0-6 on the road in league play.