Did you set it in the following format. I think you did not as its showing

NLS_LANGUAGE SPANISH and the rest america

Try testing it as Oracle says.. in NLS Guide. It should work.

NLS_LANG = language_territory.charset

------------------------
Here you go. I did

NLS_LANG = SPANISH.UTF8 at windows command prompt just before login to SQL*PLUS session.

PARAMETER VALUE
------------------------------------ ------------------------------------
NLS_LANGUAGE SPANISH
NLS_TERRITORY SPAIN
NLS_CURRENCY Pts
NLS_ISO_CURRENCY SPAIN
NLS_NUMERIC_CHARACTERS ,.
NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT DD/MM/RR
NLS_DATE_LANGUAGE SPANISH
NLS_SORT SPANISH
NLS_TIME_FORMAT HH24:MI:SSXFF
NLS_TIMESTAMP_FORMAT DD/MM/RR HH24:MI:SSXFF
NLS_TIME_TZ_FORMAT HH24:MI:SSXFF TZH:TZM
NLS_TIMESTAMP_TZ_FORMAT DD/MM/RR HH24:MI:SSXFF TZH:TZM
NLS_DUAL_CURRENCY Γé¼
NLS_COMP BINARY

15 rows selected.