The home side netted three times through Astrit Ajdarevic, Dorian Dervite and Marvin Sordell at the Valley.
Yeovil had equalised courtesy of Joel Grant and scored a late consolation from substitute Kieffer Moore, but it was not enough for the Glovers, who remain bottom of the table.
They are six points adrift of safety from Charlton, but Johnson is still believing that his men can pull off the great escape.
Johnson said: "The fat lady is not quite singing yet, but it's a poor result as far as our season is concerned because this was going to be a key game. It's not over just yet. We are still in it with five games left but we have given ourselves less of a chance because of the result.
"Mathematically, we are still in it and we have hope. We are going to have to win a few games now - half of them at least - and hope that the other teams fall away and do not get a result at all.
"It was a big game and I'm disappointed that we lost concentration at the start of both halves. We had some good chances, but so did they. The game could have gone either way."
This was the first time Charlton had scored three times under new manager Jose Riga.
Now the Belgian boss believes his players will be more calm in front of goal in the coming weeks.
Riga said: "We have to go a step forward and that is what I told the players before the game.
"We've had some clean sheets before now, but we don't have to struggle with the idea that we cannot score goals.
"Now we have to do both - get clean sheets and score goals."
This win - as well as Millwall's victory at Wigan - has brought five teams to within four points of each other as the scrap to avoid moving into League One is firmly on.
Riga added: "The result was the most important thing. The showed they are not just strong technically and physically, but mentally as well.
"Now the other teams above are concerned. The likes of Birmingham and Blackpool are now in it and we still have two games in hand."