LeBron James scored the last of his 32 points on a layup that put Miami up for good with 11.4 seconds left, Bosh capped his 30th birthday by blocking Damian Lillard's layup on the final play, and the Heat blew a 17-point fourth-quarter lead before beating the Portland Trail Blazers 93-91 on Monday night.
"If you talk it, you back it up," James said. "That's what it's about. We have guys in here that will deliver the words and then go back it up. That was big-time on his part."
Bosh ripped into Miami after a loss at New Orleans on Saturday, saying the Heat aren't playing with passion, among other colorful sentiments.
He screamed again Monday, this time in celebration as time expired.
"This game's about passion," Bosh said. "As hard as it is during the dog days to muster it up, the spark has to come from somewhere."
Wednesday won't be one of those dog days. Miami visits Indiana with a chance to close within one game in the Eastern Conference race. The Pacers lost in Chicago on Monday night.
"I miss the Pacers," Bosh said.
Lillard led the Blazers with 19 points on 3-for-15 shooting. Mo Williams scored 17, Wesley Matthews had 15, Nicolas Batum 11 and Robin Lopez 10 for Portland, which was down 17 with just more than 9 minutes remaining.
"I thought I had a pretty good look at it but Chris Bosh made a great play," Lillard said of his final shot. "He met it at the top. He went up and got it. I saw him -- that's why I floated it. I didn't think he would be able to get to it. But he met it at the very top."
The Blazers shot 11 for 39 from 3-point range, taking only 35 shots from inside the arc.
"We're tired of losing close games, but you can't help it to be proud of the way we competed," Portland coach Terry Stotts said. "It would have been easy to fold things up, but that's not in our DNA."
Miami was without Dwyane Wade for the 19th time this season, though this absence wasn't part of the season-long maintenance program designed to help his knees. Wade tweaked an ankle last week in Boston.
James was on the court getting shots up for about 15 minutes with less than an hour remaining until tip-off. With his earbuds on, sweat rolling off and surrounded by three ballboys, James worked on step-back jumpers, post moves and free throws, yelling twice at himself during one stretch in which he missed three straight from the line.
It was obvious: He's had it with this Heat slide. And Heat coach Erik Spoelstra wanted the four-time MVP aggressive, so much so that he met him on the way to the bench during a first-half timeout and gave him a two-handed shove.
"Just wanted him to continue to attack," Spoelstra said.
James took 12 shots in the first quarter, tying his career high for an opening period. He made only four of them, three of those being dunks, and wasn't shy about expressing his frustration after a couple of plays.
But he got on his customary roll in time.
James made seven of his next eight from the floor, and the Heat turned a six-point deficit in the first half into an 11-point lead in the third. An 11-2 Miami run to end the half -- James had six of those points -- sent the Heat into the locker room up 46-42, and another run opened the third.
Miami scored 13 of the first 19 points in the third, with Bosh getting nine and James scoring two before setting up Greg Oden for a dunk that capped the burst and gave the Heat a 59-48 lead. And for Oden, Monday carried extra significance, since he was facing the team that drafted him No. 1 overall in 2007.
The lead was still 11 entering the fourth, and Miami opened the final quarter with a 6-0 run that pushed the lead to 78-61 with 9:15 remaining. It was hardly over, but Bosh and James wound up saving the Heat.
Chalmers tweaked his right knee and left in the first quarter after taking a misstep along the row of photographers who sit just behind the baseline. ... LaMarcus Aldridge (back) missed his sixth straight game for Portland.