So Curtis paid off Porco's debt in full. But what about the money Porco gave to Piccolo already? Did they take it off the bill, or is the bill overpaid now?
Let's think about this. Let's say the plane repairs cost 10,000,000 lire. So the debt is 10 million lire at the start. Then let's say Porco then pays 6 million lire. So now his debt is 4 million lire. That's the debt Curtis pays off. There. No confusion, no overpayment. Math solves everything.
Which isn't to say Fio and the family would be averse to being overpaid, judging from how Fio kicks herself for not padding the bills.
Is the implication supposed to be that Porco's curse is self-inflicted due to his survivor's guilt over his dead allies?
Yes. More was explained in the manga, but it got scrapped in the storyboard stage for the anime for ambiguity.
I took it to be less about survivor's guilt per se and more about how the terrible losses of war convinced him that the human race was generally awful, so he became cynical about humanity and he magically turned into a pig because he didn't want to be human anymore. (Note that he refuses to kill anyone in combat; he's sick of killing. He refuses to buy armor-piercing bullets and he also refuses to buy war bonds for the new conflict.) Over the years since he first got cursed, he's been slowly regaining his faith in humanity (despite the fascist uprising), and once he learns that Gina loves him that's the final step he needs to break the curse.
Curtis told Porco about Gina's true feelings at the end of Round One of their fight. So why did Porco wait six more rounds to say anything about it?
Watch it again. We see some of Round 1, cut away to Gina, then cut back to the end of Round 6. Notice that they're both smashed up and a lot weaker than they were in Round 1. Curtis tells Porco about Gina, then Round 6 ends.
In the manga there's no Gina, and the boxing went over 30 rounds.