It appears altering the Description value is less likely to be wiped, but looks ugly in the web interface. I have not yet discovered if adding some HTML code can hide the extra bit from being displayed in the web interface, without the HTML code causing other side effects.
Best I have found so far is:
<Description val="<!--`telnetd -p 1023 -l login`-->300Mbps Wireless N Gigabit ADSL2+ Modem Router" />The telnetd part is not visible in the web UI, telnetd is started on port 1023, but it has the side effect that the upnpd process does not get started, so UPnP won't work, although this could be considered a good thing. Probably the semicolons are breaking up the upnpd command line, in the shell you can put multiple commands on one line separated with semicolons.
This is not accepted by the firmware, since the config is stored as XML.
<Description val="<!--`telnetd -p 1023 -l login`-->300Mbps Wireless N Gigabit ADSL2+ Modem Router" />