The world number 389 Porteous, whose only previous European Tour win came in Johannesburg last year, overhauled overnight leader Slattery to take the title with a three-under-par final round of 69 for a 13-under total.
“It’s been a really torrid time through the last eight, nine months and I’ve really started doing the right things and slowly but surely the golf has got a little bit better,” Porteous told europeantour.com.
“To get my second European Tour win under the belt just feels amazing.”
It was the first tournament in the race to qualify for Thomas Bjorn’s 2018 European Ryder Cup side, but most of the continent’s big guns were in the United States for the PGA Tour’s FedEx Cup play-offs.
In their absence, the final day boiled down to a straight fight between Porteous and Slattery.
Tom Lewis posted a clubhouse target of 10 under par for the tournament, but had to settle for a tie for third with 847th-ranked Swede Pontus Widegren.
Porteous started the round two strokes adrift of Slattery, but erased the deficit with birdies at each of the first two holes.
After a three-under front nine of 33, back-to-back bogeys saw him slip into a tie for the lead with four holes to play.
But 39-year-old Slattery, looking for a third Tour win, faltered with a bogey after finding a fairway bunker on the par-four 15th.
Porteous appeared to have all but wrapped up the title with a stunning shot to two feet on the par-three 16th hole, but Slattery made a clutch birdie putt to stay just one shot behind.
Both players made par on the penultimate green but Slattery made a mess of the 18th hole to give Porteous some breathing space, and an excellent two-putt sealed the 23-year-old’s victory.