One thing you might consider is putting together a workshop (say
about 3 hours) for your coworkers. Get management to sign-off on
the idea so it is an official workshop.
Spend a good deal of up front time going over basic coding practice
and style (consistent indentation, strict, warnings, checking return
values) then move into more specific areas. Compile up a list of
example code (or pseudo example code) from problems you've helped
with in the past --- so the examples are targetted at the kind of
things they are actually doing --- show the problem code (no names),
and your version, and most importantly, why and how your version is
an improvement.
You may even be able to coax management that a once a month afternoon
programming workshop is a good idea. These wouldn't necessarily be be
in a presentation format as the above, but more open discussion of
current projects and troubleshooting code (but always be prepared
with your own examples of code that needs improvement, kind of along
the lines of MJD's 'red flags and repair' articles on perl.com ---
you'll need these if no one brings any code of their own, or perhaps
just to get the ball rolling). Such a monthly workshop gives both
your coworkers and yourself a good chance to keep learning and
improving, and can certainly improve productivity (that may help you
sell it to management). If management won't bite, see if your
coworkers are interested in informal (voluntary) version of the same.
If they aren't interested in putting in some time and effort in self
improvement, you needn't feel compelled to keep helping them now
(imho).