Substitute Svetoslav Todorov scored a second-half winner as Portsmouth boss Harry Redknapp celebrated victory in his first game back at Fratton Park.
The first half was a dour affair with a shot from West Brom's Nathan Ellington and a free-kick from Laurent Robert being the highlights.
Pompey started the second half brightly and Todorov put his side ahead after finishing from Lomano LuaLua's cross.
West Brom pushed for an equaliser but could not find the breakthrough.
The result ended Pompey's run of five straight league defeats and lifts them to third from bottom in the league table.
Fellow strugglers West Brom are now just three points ahead and are still searching for their first away win of the season.
Redknapp kept the Portsmouth faithful waiting before making his first appearance at Fratton Park since leaving Southampton.
And, after shaking a host of hands on the way to the directors' box, it was not long before he was on the phone to the bench after Vincent Pericard had to leave the pitch injured after just six minutes with Todorov taking his place.
But for the rest of the half, Redknapp was left shaking his head as both sides served up a dismal offering with passes going astray and the final ball lacking precision.
With the cold wind and the pitch cutting up badly, the teams struggled to get into the game, the only action coming in the opening exchanges was a half shout for a penalty after the ball came off midfielder Junichi Inamoto.
The keepers were in danger of playing bit parts with the first save coming from Pompey's Jamie Ashdown on 22 minutes when Nathan Ellington fired in from outside the area.
Portsmouth's Laurent Robert was the player most likely to make things happen and he warmed up the Pompey crowd with a fiercely-struck free kick that went just over the bar from 20 yards out.
Robert's effort livened up the home side but they failed to threaten despite some promising half-breaks.
Portsmouth came out for the second half looking far sharper and LuaLua almost broke the deadlock with a first-time shot from the edge of the box but Tomasz Kuszczak saved well.
And they took a deserved lead on 56 minutes when Lua Lua got in behind the West Brom defence and centred to Todorov, who dinked it over the advancing Kuszczak from close range.
Roared on by the Fratton Park crowd, Portsmouth started to dominate and Kuszczak had to be alert to deny the rampant LuaLua again soon after when the visitors failed to deal with a long ball.
Baggies boss Bryan Robson threw on striker Rob Earnshaw, who had a transfer request turned down this week, to try and get an equaliser but Portsmouth's well-organised defence effectively snuffed out any threat.
And Redknapp's celebrations at the final whistle showed how important the victory was to his side.
Portsmouth manager Harry Redknapp: "It was a tough afternoon, a tough game but one we needed to win.
"It was a great day. To pick up a result like this on my first game back was terrific and I really enjoyed it.
"The win gives us a little bit of breathing space and gives us impetus going into the West Ham game. We have to make this a hard place to come."
West Brom manager Bryan Robson: "It was a game we deserved at least point from, Portsmouth have had one chance and scored from it.
"For their goal we had decent possession and gave the ball away cheaply, that cost us a point.
"We were fairly solid as a team but we didn't really create much, I was disappointed with our passing and our wide players were not as effective."
Portsmouth: Ashdown, Primus, O'Brien, Stefanovic, Griffin, O'Neil, Hughes, Taylor, LuaLua, Pericard (Todorov 6), Robert, Todorov (Priske 89).
Subs Not Used: Westerveld, Cisse, Viafara.
Goals: Todorov 56.
West Brom: Kuszczak, Albrechtsen, Curtis Davies, Clement, Robinson, Kamara (Earnshaw 65), Wallwork, Inamoto, Greening (Campbell 90), Ellington, Kanu.
Subs Not Used: Moore, Carter, Kirkland.
Ref: M Halsey (Lancashire).