Prueba a escribir la select de esta manera:
Código:
(SELECT nombre1 as nombre FROM tabla1)
UNION
(SELECT nombre2 as nombre From tabla2) ORDER BY 1
El problema lo tienes al poner el nombre del campo por el que quieres ordenar, pero en cada select tiene un nombre distinto. Eso lo solucinas con alias o poniendo la posición del campo por el que deseas ordenar.
Un saludo.