I ran into this bug, got around it by loading an autosave before the peace; refused his peace and offered my own, which worked.
Frequent (and several) autosaves are a good thing.
Take note of the comment I quoted. In my attempt to workaround, if I load the save I made at the stuck point, it comes back stuck. If I hit enter, nothing happens ... did not try shift+enter though.
So I loaded the prior autosave
(autosave every turn is a must with this game!) Interestingly, the prior autosave came up with the peace treaty cities annexed, not puppeted, with 35 unhappiness. The real game was 12 unhappy when they were puppeted.
I remembered that the puppet choice screens were interrupted with AI completing their turns, since Monte made the offer to me on his turn.
So I went back to one autosave earlier, and I asked Monte to make an offer on my turn, I got the same offer, and with no AI turns to interfere, puppeted all the cities and did NOT get the problem.
Looks like Jaybe did the same thing,
(edit: and Squonk too?) and got around it too.
So is this bug restricted to peace offers offered by the AI and accepeted during the AI playtime? If so, then refusal and offer on your turn may be the easiest fix.
Let me know if you want any of the saves and autosaves to test this. I am playing 1.0.0.20
dV