Hanson, the first Swede to win the event since Jesper Parnevik 10 years ago, finished at 9-under 271 on the Arlandastad course north of Stockholm.
Pelle Edberg, another Swede who was Hansons playing partner in the last group, tied for second with Nick Dougherty of England. Edberg and Dougherty shot 70.
It was Doughertys second straight runner-up finish in the event. It was also his best result since going without a top-50 finish in seven straight tournaments following the death of his mother in April.
Hanson led most of the day and was three ahead with four holes to play. But Edberg birdied the long 15th while Hanson bogeyed the next two for a one-shot edge going into the last hole, a tough 180-yard par 3.
Showing no signs of nerves, Hanson hit a brilliant iron shot to the heart of the green and clinched it with a routine par after narrowly missing his birdie putt.
It was a perfect shot with my 6-iron, Hanson said. I struggled on the back nine. I got a little bit stressed after the two bogeys. But I started pretty well.
Hanson almost had a hole-in-one on the 191-yard second, missing by centimeters.
The 30-year-old Hansons other title in 174 European Tour starts came at the 2005 Spanish Open.
Hopefully, this will mean a lot for Swedish golf, he said. For me, it has been difficult to get that second title. Its been a long wait.
With the win, Hanson moved from 23rd to 17th on the European Ryder Cup points list. He will play the next tour event in the Netherlands instead of taking the week off because he has an outside chance to make the team that will defend the Ryder Cup against the United States next month at Valhalla in Louisville, Ky.
Defending champion Mikko Ilonen of Finland shared 20th at 2-under 278. Parnevik, the tournaments player-manager, tied for 46th at 282.