Resort manager Kjartan Sekkingstad was among four people abducted in September 2015 by Abu Sayyaf Islamic militants based on remote and mountainous southern islands who have earned millions of dollars from kidnappings in recent years.
A senior aide to Philippine president Rodrigo Duterte said Sekkingstad had been released but was in the hands of Muslim rebels in Sulu, a remote archipelago known as a militant hideout.
"He is now released by captors and (is) staying overnight with Nur Misuari's camp... due to heavy rain," Duterte's peace adviser Jesus Dureza told AFP.
He was referring to the founder of the Muslim rebel group Moro National Liberation Front (MNLF), who are currently in peace talks with the government and have been working with them to secure Sekkingstad's release.
"He is well," Dureza said, adding that Sekkingstad would be handed over to authorities on Sunday and then flown to the southern city of Davao.
The president's spokesman Martin Andanar told AFP Duterte was heading to Davao to receive Sekkingstad.
Sekkingstad was among a group seized from aboard yachts at a tourist resort on Samal island, about 500 kilometres (300 miles) to the west of Sulu. Two of the other captives, Canadians John Ridsdel and Robert Hall, were beheaded in April and June respectively following the lapse of ransom deadlines.
Hall's partner Filipina Marites Flor, also among the four, was freed in June.
The Abu Sayyaf is a radical offshoot of a Muslim separatist insurgency in the south of the mainly Catholic Philippines that has claimed more than 120,000 lives since the 1970s.
The group, which is blamed for the worst terror attacks in Philippine history and listed by the United States as a terrorist organisation, does not usually release hostages without ransom.
But regional military spokesman Major Filemon Tan said the release of the victim was "an offshoot of ongoing military operations... and the assistance of the MNLF".
Duterte last month ordered a military offensive to "destroy" the Abu Sayyaf in an assault that had killed 15 soldiers and 32 militants, according to the military.