It should have been a more comfortable though for Liam Buckley’s champions as Sligo finished with 10 men.
The home side’s dominant start duly brought its reward on 18 minutes with what proved the deciding goal.
Browne’s ball out of defence found Forrester who fed Fagan. The St Pat’s striker benefited initially from a slip by Sligo skipper Gavin Peers before cutting across and setting up Forrester, who drilled a crisp right-foot shot across Rogers to the far corner of the net from 20 yards for his tenth goal of the league campaign.
Sligo responded with a little spell of pressure which almost brought an equaliser on 21 minutes but for a fine block by Kenny Browne from Alan Keane’s shot on the turn after a right scramble in the box.
Sligo brought on Eamon Zayed at the break as they changed their shape to go with two up top.
It certainly gave them a bit of impetus with Sean Maguire shooting just wide off his left foot five minutes in.
St Pat’s worked hard to get back on the front foot and they should have all but made the game safe on 70 minutes.
Forrester galloped forward, worked a one-two with Fagan, beat a defender to get the ball onto his left foot.
The finish wasn’t there this time, though, as he fired low past Rogers’ left-hand post from the edge of the area.
Rogers then made a fine save, going full stretch to touch Fagan’s 20-yard shot, that looked destined for the top corner, round a post.
Sligo finished with 10 men when North was shown a straight red card for a professional foul on Conor McCormack on 86 minutes.
Incredibly, John Coleman‘s might then have snatched an unlikely draw in the first minute of stoppage time.
Maguire put Zayed in on goal, but Clarke was off his line superbly to make a brilliant save.
Clarke; McCormack, Hoare, Browne, Bermingham; Bolger, Chambers; Byrne, Quigley, Forrester; Fagan.
Rogers; Keane, Peers (McMillan, 60), Spillane, Davoren; Maguire, Cawley, Conneely, Ledwith (Zayed, h/t); Russell; North.
Rob Rogers (Dublin).