The home side were on top throughout, with Luciano Orquera kicking beautifully for his six goals and Gio Venditti scoring the only try of the match.
Ireland, meanwhile, were disappointing - with their bad-tempered play earning them three yellow cards and few friends in Rome in a result which leaves them in danger of collecting the wooden spoon.
Ireland got off to a good start as a few early nerves for the home side saw them make silly mistakes, and the visitors went ahead after just six minutes through a Paddy Jackson penalty.
After that, however, the Italians' attacking rugby - so ably demonstrated against both France and England in this year's tournament - began to come to the fore, with the hosts pushing forwards patiently to the Ireland goal-line before forcing a penalty on 14 minutes.
Luciano Orquera converted from right under the posts to level the scores, then soon after put them ahead: he first hit the post with a long-range effort, then made up for that on 23 minutes with one from the left touchline after Cian Healy failed to roll away after tackling Sergio Parisse.
Ireland were then hit by a series of blows: Keith Earls and Luke Marshall both went off with arm injuries, and Earls's replacement Luke Fitzgerald also ended up hobbling off before the break.
Things got worse: Brian O'Driscoll was sin-binned for a needless and spiteful stamp on Simone Favaro, and with a man advantage Italy went 9-3 ahead as long-range kick specialist Gonzalo Garcia struck a penalty over from over 50m.
A momentary lapse in concentration with the clock in the red gave Ireland some respite, however, as Luke McLean failed to release Sean O'Brien after a tackle, and Jackson landed the penalty with the last kick of the half to cut the deficit to three.
Italy began the second half looking determined to earn more points from their superiority, and 10 minutes in they had their reward when patient pushing, driving and probing for gaps ended up with Gio Venditti touching down in the corner.
Orquera added yet another superb goal kick to make it 16-6 - but within minutes the 10-point deficit was slashed. Sergio Parisse was yellow-carded for an attempted trip, and Jackson landed both the resulting penalty and another minutes later for an Italian once again failing to release the ball in the tackle.
Smelling blood, Ireland pushed up again with some brilliant rugby that got to 21 phases when Peter O'Mahony was brought down just inches from the line, Ireland at least getting a consolation three points from a penalty for offside that put the scores at 16-15.
Garcia missed a chance with a another long-range penalty with 12 minutes left, but within two minutes the lead was up to 19-15 anyway, Ireland conceding a penalty for pulling down a maul, allowing Orquera in to land his fifth goal of the game with a fine shot from almost the half-way line.
With Donncha Ryan sin-binned for dissent as the final 10 minutes began and Conor Murray joining him a few minutes later for a trip off the ball, Italy remained on the front foot for the rest of the match and closed out their first ever Six Nations win over Ireland - a fitting way to conclude their best ever season in the Six Nations.
The destination of the wooden spoon will not be known until France have played Scotland in Paris later on Saturday night, but should Ireland end up bottom of the table they will only have themselves to blame after a patchy, inconsistent and thoroughly frustrating Six Nations campaign.