Kennedy mistakenly signed for a quadruple-bogey 8 instead of a 7 as he completed his third round at 7-over-par 80 to fall five shots off the lead. But after a superb final-round comeback in gale-force winds, the 29-year-old then bogeyed the 18th to miss out on a playoff by a single stroke.
Hanell closed with a 71 on the Santo da Serra course for a 4-under 284, claiming his first European Tour title.
Kennedy finished in a tie for second at 285 alongside Swedish
rookie Steven Jeppesen, who stumbled to a 76 in the final round, and American Rob Rashell, who finished with a 73.