TORONTO -- Even though the playoff lights are getting dimmer for the Raptors, head coach Dwane Casey doesn't want his team going to sleep.
Johnson added 12 points and Sebastian Telfair chipped in 11 points for Toronto (26-40), which is seven games behind Milwaukee for eighth in the East with 16 games remaining.
Casey says keeping his team motivated while it drifts towards the off-season is going to be a challenge.
"There's a malaise this time of year, we can't let that set in," said Casey. "We can't start out games like that, no matter who we play. We were running in mud in the first half.
"We have a great group of guys that want to play well, but they are human. It is up to us, the coaching staff, to push them through this time of year. We have to play like it is going to help propel us into next year."
Toronto went into the final quarter with a slim one-point lead, stretching it to 75-70 at 8:36 when Johnson tipped in Alan Anderson's jump shot. Terrence Ross connected from behind the arc before dishing to Gay for a rim-rattling slam, and the Raptors were back up 80-72 with six minutes left to play.
Charlotte cut the lead to 84-77 with three minutes remaining, but Gay and DeMar DeRozan combined on a six points to put the game away with 37 seconds left.
The Bobcats went ice-cold in the fourth, shooting an unsightly eight per cent and making only one field goal on 13 shots.
"You're not going to win in the NBA when you score 10 points in the fourth," said Charlotte coach Mike Dunlap. "And they did a good job of keeping us out of the paint in the fourth."
Gay came out firing in the third with a jumper, two from the stripe and a quick pass to Jonas Valanciunas under the basket for the rookie to easily drain, making it 56-44 at 9:51.
Gay was buzzing around the post for most of the game. He says it's an area where he feels he can be dangerous.
"To be honest with you, I think that is where I strive," said Gay. "I'm just trying to find out different ways to be effective here. In the game that's where I like to be."
Charlotte went on a 10-0 run in the third before Gerald Henderson jacked up a three and made a driving layup to cut the lead to 64-63 with just over two minutes remaining in the quarter. With three seconds left, Ben Gordon hit a buzzer-beating two to tie the game.
Henderson, coming off a career-high 35 points against the Celtics in his last game, had 22 points to lead Charlotte (14-51). Kemba Walker finished with 20 points for the Bobcats.
Toronto opened up a 10-point lead early in the second but Charlotte wouldn't go away. Jeff Taylor tipped in a shot and fellow reserve Gordon knocked down a three to make it 28-23.
The Raptors' bench started going hard to the basket and drawing calls. Telfair and Anderson combined on 6-for-6 free-throw shooting to make it 42-33 with three minutes left in the half.
After Josh McRoberts dunked on DeRozan to cut the lead to five with 40 seconds left, the Raptors guard came back hard the other way and was fouled while shooting. He jawed at the officials, however, and earned a technical to close out the second 48-42 for Toronto.
Walker had nine of Charlotte's 13 points midway through the first quarter, but Gay put Toronto in front when he slammed down a lob, then grabbed a rebound at the other end before bringing the ball back up court and finishing with a nice fadaway jumper to make it 18-15. Walker and Gay both finished the quarter with 11 points each.
Johnson now has 42 rebounds over his last three games. He says he's getting to the right spots and the ball is finding him.
"I was able to get position and get rebounds, just playing hard and the next thing I know I look up and it's 21 boards. Just hard play."
The Raptors will have their hands full Sunday when they take on the steamrolling Miami Heat. The defending champs are in the midst of a recording-setting win streak -- 21 games after defeating the Bucks 107-94 on Friday. Toronto has lost 10 straight to Miami.
Notes: Valanciunas came into the game tied in rebounding with Charlotte's Michael Kidd-Gilchrist for fifth amongst rookies at 5.6 per game. ... With point guard Ramon Sessions injured (sprained left MLC), the Bobcats signed 33-year-old guard Jannero Pargo to a 10-day contract on Thursday. Pargo played five games for Toronto in 2003-04 season. ... Charlotte has only three wins since January, and two of those have come against Boston. ... Toronto will face the Bobcats once more this season, Wednesday in Charlotte. ... Attendance at Air Canada Centre was 17,514.