It doesn’t unconditionally prefer Spanish pages over English pages. What you’re seeing is that it picks a section first (1 instead of 8, in this case) and sticks to it. In section 1, the best match for an English request is the Spanish page, because there is no English page.
The rationale behind this logic is that it’s better to serve the manpage of the correct section, even if the language doesn’t match. If the user requested e.g. crontab(5), they won’t be happy with crontab(1) only because there is a crontab(1) version in their preferred language.