Hanson and England's Paul Casey shared the overnight lead, but they were overtaken by Northern Irishman Darren Clarke and South African James Kingston before Hanson struck back.
He moved to 18 under par, while Casey's four opening pars dropped him to fifth place with Spain's Miguel Angel Jiménez joining Clarke and Kingston on 17 under.
Earlier Dane Søren Kjeldsen and England's Richard Finch achieved new course-record scores of 63.
Jiménez had also eagled the third and by turning in 32 and then grabbing his third birdie of the day on the tenth he moved one in front at 19 under.
Casey and Hanson joined him with birdies at the long ninth, however, Casey helped by a real stroke of luck. His second shot flew wildly right, but finished in ground under repair and he was able to move it from sand back onto grass.
Clarke duffed two chips at the same hole for a bogey six that left him three adrift.
It was advantage Hanson again when he converted a nine foot chance on the short 12th.
Casey came back with a birdie at the long next, but playing partner Hanson matched it and was 21 under par to Casey's 20 under, while Jiménez was two back.