De kontrollerade spelet från början och öppnade när Kyle Bennett sköt hem från 20 meter.
Michael Doyle slog i baren från räckvidd för besökarna, som fördubblade sin ledning när en Ben Davies kors förvandlades till sitt eget mål av Matt Pearson.
Pompey's Doyle gjorde mål, volleying bortom Jason Mooney från 30 meter, innan Shay McCartan drog en tillbaka.
Resultatet betyder Stanley är ner till sjätte, medan Paul Cook sida är nu sex poäng från den sista automatiska befordran plats.
Portsmouth gjorde tre första-halva mål bort på Accrington för att flytta över dem till fjärde i League Two.