Matchen förblev jämn målmässigt till Borussia Dortmund tog ledningen i 21:a minuten, genom Donyell Malen.
Laget ökade ledningen till 0-2 i 38:e minuten, när Jadon Sancho hittade rätt.
På stopptid i första halvleken fick Borussia Dortmund Marcel Sabitzer utvisad. I 70:e minuten slog Justin Njinmah till, och reducerade åt Werder Bremen. Mer än så blev det dock inte för Werder Bremen.
Det här var Werder Bremens sjätte uddamålsförlust den här säsongen. Det var även Borussia Dortmunds fjärde uddamålsseger.
Werder Bremens nya tabellposition är nionde plats, medan Borussia Dortmund är på fjärde plats.
I nästa match möter Werder Bremen Union Berlin borta på lördag 16 mars 15.30. Borussia Dortmund möter Eintracht Frankfurt söndag 17 mars 17.30 hemma.