Bolton overcame an early deficit to overpower Portsmouth and chalk up a fifth straight Premiership victory.
Anelka got Bolton's third goal
Pompey led after 72 seconds when Matt Taylor beat Jussi Jaaskelainen to score but David James missed a Gary Speed corner and Abdoulaye Faye headed home.
Ivan Campo headed in from close range after James had kept out a Kevin Davies effort and Nicolas Anelka got on the end of a Davies cross to score a third.
A wonderful individual effort from Andy Cole gave Pompey late hope.
It was another impressive all-round display from Sam Allardyce's side, who on this form look a good bet to push the Premiership heavyweights all the way for the Champions League places.
606 DEBATE: Your reaction to Bolton's win
But they were made to work hard at both ends of the pitch by a Portsmouth side also enjoying life at the top end of the Premiership table.
Bolton had conceded just one goal in their previous four games but they fell behind inside two minutes from the first attack of the game.
Cole's innocuous pass deceived the Bolton defence and Taylor did well to keep his feet in a slippery penalty area to find the empty net for his sixth goal of the season.
Bolton's answer was to bombard the Pompey area with long throws but the Pompey backline, marshalled by Sol Campbell and Linvoy Primus, stood firm.
But they could only hold out for so long and Bolton twice threatened through a Kevin Nolan volley that was kept out by Primus' head and Davies' slashed volley wide.
James had not been tested when he went walkabout trying to pick off a Speed corner and Faye headed over the line to put the Trotters on level terms.
Ten minutes later Bolton were ahead and this time there was little more James could have done.
The Pompey keeper did brilliantly to keep out a point-blank Davies header but his save fell nicely for Campo to head in off the underside of the crossbar.
Cole should have got a second for Pompey when he wriggled free of his man marker inside the area, but Jaaskelainen got his large frame in the way.
Pompey continued to look threatening with Noe Pamarot putting a free header over and Cole also bringing the best out of Jaaskelainen.
But Bolton always looked the more likely to add to the scoreline.
Nolan found himself clean through on goal only to be denied by James' body, but the Pompey backline that had looked so solid in the first half began to creak under pressure.
There was a touch of misfortune about the third goal as an outstretched Campbell deflected a Davies cross towards goal.
James could only palm it into the path of Anelka who gladly accepted the opportunity for a fourth goal in eight days.
Bolton poured forward in search of more goals as Portsmouth increasingly looked a beaten side.
However, with less than two minutes left Cole stepped inside a couple of tackles and drilled a low shot into the bottom corner to ensure a nervy finish for the home side.
But Bolton survived a difficult four minutes of added time to hand Pompey a first defeat in seven games.
Bolton boss Sam Allardyce:
"We are safe now and can start planning for next year which is great.
"I was worried when we went 1-0 down. It looked as though living with Portsmouth was going to be difficult.
"We can take huge satisfaction from this win. We are showing character and ability. Three wins over the Christmas is credit to the players' fitness."
Portsmouth manager Harry Redknapp:
"David James has been fantastic for me. He's had an incredible season and we would not be where we are had it not been for him.
"We passed the ball around for first 20 minutes and looked fantastic.
"But we knew it was going to be hard. They keep coming and make it difficult for you. Eventually they got the breaks but they've a lot of ability as well."
Bolton: Jaaskelainen, Hunt, Meite, Faye, Ben Haim, Nolan, Campo, Speed, Diouf (Pedersen 82), Anelka, Davies.
Subs Not Used: Walker, Gardner, Vaz Te, Tal.
Goals: Faye 30, Campo 40, Anelka 62.
Portsmouth: James, Johnson, Primus (O'Brien 75), Campbell, Pamarot (Mwaruwari 78), O'Neil (Thompson 68), Fernandes, Taylor, Davis, Kranjcar, Cole.
Subs Not Used: Ashdown, Hughes.
Goals: Taylor 2, Cole 89.
Ref: P Walton (Northamptonshire).