As a non native English speaker, I find it so difficult to grasp.
Both of those cases are associated with non-native English speakers (Irish Gaelic in the 1st case and Italian in the 2nd) speaking English as a second language. And in both of those cases, it is because their languages do not typically have hard stops on those letters like we do, and typically trail off into a vowel sound so they added those.
“Whiskey in the Jar” is supposedly an old Irish drinking song, several hundred years old (yes I know what you’re thinking — *all* Irish songs are drinking songs — but let’s not go there). And often songs (especially those that start from other languages) have to use non-standard pronunciation or add in some extra sounds to make it rhyme or fit the beat.
Historically, every time period has its own slang that was popular for a while. Some of this slang sticks around, and some of it doesn’t. Adding an “oh” sound to the ends of words dates back to at least the 1940s. They thought it was cool back then. You might say “Hey there, daddy-o.” More recently, you’ve got “Valley Girl”. This is basically a parody of how teenage girls in Southern California would speak in the 90s. “Like, I don’t know-uuuuhhh, like, what you think-uhhh, you’re like… doing? That’s not coolio.”
My area does this thing where we drop -ly from adjectives. For example, “I’m going to quickly go to the store” becomes “I’m going to quick go to the store.”
English has no rules. It’s all freestyle.
Singers do it because it’s much easier to hang on a vowel sound when singing than a consonant. For a hard-stop sound like the letter “p” it’s *impossible* to carry a note on so a singer must improvise.
When someone says “shut uppa you face!” they’re making fun of the way native Italian speakers sometimes mangle English. The US had a huge wave of Italian immigrants around the turn of the last century and so everyone is familiar with Italian accents.