As in the previous two matches, Dortmund scored first only to see their efforts undone after half-time.
Held 1-1 by Borussia Monchengladbach of last weekend and beaten 3-2 at home by Olympique Marseille in the Champions League in midweek, Dortmund went ahead through Shinji Kagawa in the 27th minute.
Ilkay Gundogan found Kagawa on the edge the area and the Japan midfielder drilled his effort into the bottom left-hand corner.
Kaiserslautern, 15th in the table, levelled on the hour when Lukasz Piszczek mis-directed a headed clearance and the ball fell to Sahan, who fired a dipping volley beyond bemused goalkeeper Roman Weidenfeller.
The visitors nearly snatched a win when Itay Shechter's header was stopped on the line by Weidenfeller and, although the Israeli forced over the rebound, his effort was disallowed for a foul on the goalkeeper.
Mario Gotze then rattled the bar for Dortmund who were unable to find the winner despite a bout of late pressure.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.