Leipzig closed the gap at the top of the Bundesliga to five points after a 4-1 victory at Werder Bremen.