Sie müssen hier nicht den platten Reifen neu erfinden (das Rad neu erfinden).
Es gibt zwei spanischsprachige Sortierungen in MySQL:
utf8_spanish_ci (modernes Spanisch) und utf8_spanish2_ci (traditionelles Spanisch)
Diese kennen die Sprache gut genug, um zu wissen, dass N und n zusammengezählt werden sollten, aber dass Ñ und ñ verschiedene Buchstaben zwischen N und O sind. Im Spanischen ist das Ñ eigentlich ein anderer Buchstabe, kein Akzent.
Stellen Sie Ihre Spaltensortierung auf utf8_spanish_ci ein und alles wird so funktionieren, wie Sie es möchten.