Joyce anchored the innings with a gritty unbeaten career-best 116 off 132 balls with a dozen boundaries and a six as Pakistan opted to field first after winning the toss.
The visitors had reduced the home team to 4-2 when fast bowler Junaid Khan removed first match centurymaker Paul Stirling without scoring and newcomer Asad Ali claimed the wicket of captain William Porterfield for one.
Left-arm spinner Abdul Rehma, one of three bowlers changed by Pakistan, took 4-48.
But Stirling's dismissal in the very first over pegged back the home team in the decisive match as Khan and Ali dominated with the new ball.
More From This Section
Joyce had played 17 ODIs for England in 2006-07 which included 107 against Australia at Sydney. In 2010 he was granted special permission by the International Cricket Council to switch back to his country of birth.
Joyce featured in two productive stands -- 65 runs with Niall O'Brien (29) for the third wicket and a run-a-ball 94 with Kevin O'Brien (38) for the fifth.
Joyce raised his century off 120 balls by sending Rehman for a six before the leftarmer hit back with two quick wickets and reduced Ireland to 189-8.
However, Joyce added 40 runs in the last five overs. Pakistan's bowlers also helped Ireland's cause by bowling 17 wide balls.