The Red Imps were forced to survive first-half pressure from the visitors before taking the lead with their only shot of the first half.
Dale went on to level soon after the break and stormed forward looking for the winner but they were caught out by a long throw and lost away from home for the first time since August.
Rochdale had a chance early on when Dave Perkins set up Adam Rundle but the winger completely missed his kick in front of goal.
Lincoln's Louis Dodds was unlucky in the ninth minute when his free-kick beat Sam Russell but hit the outside of the post.
Rochdale continued to create chances with Gary Jones getting clear only to send his shot straight at Alan Marriott.
A mistake by Nat Brown let in Rochdale in the 23rd minute but Rene Howe saw his effort blocked by Marriott at point-blank range. Howe then burst into the box but his shot was kept out by the City keeper.
Lincoln went in front in first-half stoppage time when Lee Frecklington blasted a free-kick through the Rochdale wall.
Russell failed to hold the ball and, as the Dale defenders hesitated, Jamie Forrester followed up to tap the ball into the net for his ninth goal of the season.
Howe broke away early in the second half when he beat three defenders but again Marriott kept out his shot.
Rochdale got on level terms in the 56th minute when Perkins sent a long ball over the Lincoln defence and Howe ran on to score.
Dale went close again nine minutes later when John Doolan set up Gary Jones but the veteran midfielder saw his shot blocked by Scott Kerr.
Lincoln got the winner in the 81st minute after Rochdale failed to clear a long throw into the box. The ball fell kindly for Danny Hone and the teenager stabbed the ball into the net from six yards for his first goal in senior football.