Primeira Liga: Boavista 1 Rio Ave 1
Boavista were dealt a ninth-minute blow when Brayan Beckeles pulled back Ahmed Hassan Koka in the penalty area as the last man and was shown a straight red card.
Koka took the spot-kick himself and sent goalkeeper Mika the wrong way for his 10th league goal of the season.
But the visitors failed to make the most of their numerical advantage and were made to pay deep into stoppage time when forward Ukra was punished for appearing to handle the ball.
Tengarrinha made no mistake from the spot before Prince-Desir Gouano was given his marching orders a minute later for picking up his second booking of the game.
The result leaves Boavista in 13th, while Rio Ave remain in eighth - after missing the chance to climb as high as sixth.