The problem is that when looping, the variables setup-map and describe-map gets outdated and causes the overwrite. The solution I came up with was to update them both to their default after each iteration. This involved moving the keymap-setting forms to a separate function.