Bayer Leverkusen opened up a five-point gap at the Bundesliga summit after a swashbuckling performance to defeat title rivals and defending champions Bayern Munich 3-0.