Bayern and Real Madrid trade blows to leave semi-final on a knife-edge