Everton's Mr Reliable Leighton Baines was their unexpected matchwinner with two first half goals as West Brom's poor run continued at Goodison Park.
The left-back smashed one in from the edge of the area before converting a penalty - his 10th success from the spot to maintain his 100% Premier League record.
Substitute Shane Long pulled a goal back midway through the second half but the Baggies, who had won just once in their previous 13 league visits, saw their recent slump extended to just one point from a possible 15.
Victory lightened the mood on the blue half of Merseyside somewhat after the collapse earlier in the day of an £8.6million deal for FC Twente midfielder Leroy Fer as the Dutch side refused to accept restructured payments after the player's medical highlighted an issue.
Fans would also have been questioning manager David Moyes before kick-off after he dropped Nikica Jelavic.
Even accounting for his lack of recent form the striker, substitute in a Premier League match for the first time since March 13, looked a bold one.
However, Moyes probably reasoned the Croatia international, who had not scored against top-flight opposition in seven matches with his last strike being the last-minute winner against Tottenham on December 9, needed either a break or a wake-up call.
But it was a surprise that in his absence Baines was the player to step up to the mark in front of goal, even if one was from the spot.
After West Brom's first attack, in which Graham Dorrans' shot was blocked by Sylvain Distin, the visitors appeared to run out of ideas very quickly.
Right-back Billy Jones almost compounded their lack of adventure when his tackle on the edge of the area saw the ball cannon off Victor Anichebe and float dangerously wide of the post for what would have been a freakish own goal.
Everton had also contributed little to a game which was flat for almost half-an-hour with Marouane Fellaini's shot on the turn against the upright from Anichebe's knockdown - via Baines' cross - their most threatening moment.
The opening goal virtually came out of nowhere - which was precisely where West Brom's defence were - when the England international picked up Leon Osman's pass. With no tackle forthcoming the left-back advanced to the edge of the area before smashing a shot past Ben Foster.
West Brom had George Thorne carried off on a stretcher just before half-time after a collision with Anichebe and it proved to be a double blow.
Substitute Claudio Jacob's first significant involvement was to concede the penalty just four minutes after coming on.
Steven Pienaar's backheel released Anichebe on the left of the area and the Argentina midfielder, who has missed most of the last eight weeks with injuries, brought him down.
With a man like Baines on spot-kick duty it seems you are guaranteed a goal - and the 28-year-old did not disappoint by smashing home his second.
Romelu Lukaku, who had spent most of the opening 45 minutes running into offside positions, wasted West Brom's first chance of the second half when he was off target soon after the restart.
Everton's left continued to be their most profitable avenue of attack and when Kevin Mirallas cut in he forced a low save out of Foster.
The introduction of Long for James Morrison in the 62nd minute paid immediate dividends as within three minutes he had pulled one back.
Lukaku's diagonal run saw him break clear of the defence and round goalkeeper Tim Howard but his cross-shot was bundled up into the air by John Heitinga and Long reacted quickest to head in.
Finally West Brom found another gear and when Dorrans rattled the crossbar with a long-range free-kick they began to sense their chance.
But Everton proved they could threaten from set-pieces with Pienaar's curling free-kick tipped over from Gibson.
The South African's next contribution should have brought the hosts' third goal but when his deflected low shot rebounded off the post Leon Osman blazed over the open goal from six yards.
Jelavic finally replaced Anichebe with six minutes remaining but could not make an impact in that time.
Fortunately for Everton he was not required, despite some late Baggies pressure, as they closed the gap on fourth-placed Tottenham to a point.