1) Can you check if urlkey is definable at the store browsing level, or if it is set at the website level? This way you can only create 1 url key for EN and ES. You need it to be at the store view level, define two separate values.
2) Is there something in your error log? (and is your error log enabled?) Typically, rewritable URLs are automatically created for each store type. If not, you may need to manually reindex.
It is difficult to give further advice, since the problem can be anywhere (conflicting code? Bad code?)
source share