Erling Haaland scored a brace as Borussia Dortmund thrice came from behind to win a seven-goal thriller against Bayer Leverkusen.