It was the Swede's first victory over the Las Vegan after losing all six of their previous meetings.
"There's probably not a better occasion to beat him than in a final," said the Swede, who missed all of last season because of injury.
"I've been close (to beating him) before but he always fought his way out of it. This time he didn't."
Agassi keeps Masters Cup berth in view
After losing the first set, the 29-year-old broke Agassi twice in the next for a 4-0 lead. Agassi grabbed a break back before Johansson served out to take the match into a final set.
By now the Swede was on a roll and he broke the Las Vegan's opening service game. He went on to hold serve until 4-3, when a couple of close calls helped Agassi break back to 4-4.
Agassi had another close call in his favour in the next game but nothing seemed to demoralise Johansson and the two players held serve until the tie-break.
A wide forehand by Agassi gave Johansson a break for 3-1 in the tie-break and he followed up with a superb forehand return to take a 4-1 lead.
Agassi broke back to 4-3 but then hit a backhand too long giving Johnasson a 5-3 lead before another good return by the Swede made it 6-3.
Agassi saved the first match point with a passing shot but Johansson made no mistake on his second as he hammered an ace past the American to make it 7-4 and seal the win.
"When I felt that I was getting close (to winning) I got a little tense," said Johansson.
"I don't know why that always happens, you've been in the situation so many times before but that doesn't help and you're as tense every time.
"Next year my big goal is to get back into the top 20."
It was Johansson's eighth tournament win and third appearance in a Stockholm Open final. He won the tournament in 2000 and reached the final in 1998.
"He played better than I did for two of the three sets, so the result was deserving," said Agassi, who remains in contention to secure one of the three remaining berths in the eight-man Masters Cup in Houston.
Agassi marches on in Stockholm
Former world No.2 Norman retires