Peter Gustafsson posted a 3-under 69 to move into second place at 5-under-par 139. Peter Lawrie and Gregory Bourdy share third place at minus-3.
Jamie Donaldson climbed into a share of fifth place at 2-under-par 142 thanks to a 4-under 68 on Friday. He was joined there by Jose Rivero and Hennie Otto.
Hanson, one of seven first-round co-leaders, picked up his first birdie of the day at the par-5 fifth. He tripped to a bogey at the next, however.
The 27-year-old Swede eagled the par-5 ninth to climb to minus-4. Hanson came right back with a birdie on the par-4 10th to grab a share of the lead alongside Gustafsson.
Hanson carded seven straight pars from the 11th on the Old Course at San Roque Club. He then drained a 35-foot birdie putt at the par-4 18th to grab the outright lead.
'It was like a game of chess,' said Hanson. 'You try to make as few mistakes as possible. It is probably not that much fun to watch as you end up with a lot of long putts and two putting.'
Gustafsson opened his round on the back nine. He wrapped birdies at 14 and 16 around a bogey at the par-4 15th.
The Swede ran off four consecutive pars around the turn and moved to 4 under with a birdie on the par-3 third. Gustafsson's next birdie came at the par-3 seventh. He then parred his final two holes to end at minus-5.
Miguel Angel Martin, Andrew Marshall, Mikko Ilonen, Robert Karlsson, Graeme Storm and Diego Borrego share eighth place at 1-under-par 143.
Paul Lawrie, the 1999 British Open winner, heads a group of eight players at even-par 144.
The cut line fell at 4-over-par 148 with 71 players advancing to the weekend.
Among those who missed out on the final two rounds were Caltex Masters winner Nick Dougherty (149), former Heineken Classic champion Jarrod Moseley (151), last week's winner Robert-Jan Derksen (152) and defending champion Christian Cevaer (154).