Erling Haaland scored twice as Borussia Dortmund came from behind three times to beat Bayer Leverkusen.