Bug - Changing userinfo changes old invoices

I have a problem. One of my clients has changed his office address. This means I adapt it in the user info. This all works perfectly fine, however the info on OLD invoices also gets changed because GENERATE pdf gets called.

A solution would be to store the old info somewhere in the invoice database table.
OR stop generating invoices and store them on the server for future reference in PDF form and call this file once the PDF was generated successfully. Then an extra button “force invoice re-generation” would come in handy in case it’s really necessary to re-generate the invoice.

What do you think? I know it’s also possible to generate a new client account but that’s causes cluttered info and I don’t like the idea of losing customer history.

(I’d like to add that this is a rather major issue because changing old invoices is illegal in my country)

[size=10]Last Update: 16.04.2015[/size]

Related to Improvement - Create an archive for invoices
As of this it’s quite a duplicate post.