Espanyol vandt højst overraskende med 2-1 over Real Madrid i en kamp, hvor hovedstadsklubben kæmpede med at få offensiven til at hænge sammen.