I guess gift shops are the best bet. I know London Zoo has alsorts of stuff, keyrings, badges etc, with names on. Will look next time we're there.
Funnily enough neither of my kids can find their names, except when we went to Jersey and dd found socks and pens with her name on!