Several tools exist, but may seem 'jerky' on modern systems.
Vogons has a page on it.
List of Slowdown Utilities (Beta)
I find that a combination of CPUSPD and SLOWDOS works for most things.
CpuSpd - A Hardware Based CPU Speed Control Utility for DOS/Win9X Retro Gaming
Use cpuspd to lower the clockrate to the most power saving mode, (which is still about 400mhz on modern systems) then use slowdos to inject NoOp cycles in to slow it down with busywork.
Slowdos has a nasty habbit of not completely uninstalling itself from memory after use though.
It has a very useful functionality of allowing you to specify a length of time after being run, in which it functions. This is useful for games like wizardry 7, or mystic towers, which have a time sensitive early process and then dont care afterward. Setting 2 seconds or so of slowdown using a batch file, that then immediately starts the troubled program, usually sorts these out without completely cripping the computer.