"a person who actively seeks to correct social ills in an idealistic, but usually impractical or superficial, way," 1650s (as do-good), in "Zootomia, or Observations on the Present Manners of the English: Briefly Anatomizing the Living by the Dead. With An Usefull Detection of the Mountebanks of Both Sexes," written by Richard Whitlock, a medical doctor. Probably used even then with a taint of impractical idealism. The verbal phrase do good "do good deeds" was in Old English.
Modern pejorative use seems to have begun on the socialist left, mocking those who were unwilling to take a hard line. OED has this citation, from The Nation in 1923:
There is nothing the matter with the United States except ... the parlor socialists, up-lifters, and do-goods.
The form do-gooder appears in American English by 1922, presumably because do-good was no longer felt as sufficiently noun-like. A slightly older word for this was goo-goo.