Porto came from behind to secure a 2-1 win at bitter rivals Benfica and reignite their title hopes in Portugal's Primeira Liga.