Scottish Under-21 midfielder Graham Dorrans thought he had sent the Baggies on their way to a first away victory since September, only for Niko Kranjcar's spectacular free-kick to level for the hosts three minutes later.
Albion are six points from safety and have just six games left to save their season and manager Tony Mowbray, whose assistant Mark Venus was sent to the stands following an altercation with a fourth official, admitted post-match it was two points dropped.
Both sides enjoyed openings in a lively first 45 minutes as Pompey midfielder Kranjcar clipped the outside of Scott Carson's post following a Jermaine Pennant short corner.
Baggies midfielder Chris Brunt had a sight of goal when he stole the ball from the feet of Sol Campbell following some indecision between the Portsmouth captain and Hayden Mullins, but the Northern Ireland International sent his finish into the arms of David James.
It was Pompey who took the lead as Pennant's pace down the right took two West Brom defenders away from the penalty area allowing Younes Kaboul space to beat Jonas Olsson and curl in a left-footed strike for his first league goal in a Pompey shirt.
The onus was on the home side to claim a second and effectively kill off West Brom, but Mowbray's side were able to equalise in calamitous circumstances.
Amid a goalmouth scramble Mullins' slide tackle toed the ball back to James for the Portsmouth goalkeeper to hurry his clearance straight to the feet of James Morrison.
The Scottish midfielder's attempt was saved, but Jonathan Greening was on hand to gobble up the rebound.
West Brom then took a surprise lead as Mullins clumsily brought down Greening and Brunt's low free-kick deflected off Dorrans' backside to deceive James.
But Portsmouth were not to be undone and three minutes later Kranjcar's picture book 25-yard free-kick earned them a point in the fight for Premier League survival.