And because I just can't leave well enough alone:

I hacked together my own clipboard monitor (and get to add C# to my resume now!) and noticed something odd. Whenever there is no delay, such as when using Special Copy or copying from another program, only a single WM_DRAWCLIPBOARD message is sent. However when pressing Ctrl+C in an editor window, four WM_DRAWCLIPBOARD messages are sent, as if SetClipboardData is called four times.

Perhaps that's worth looking into?

Additionally, reading the clipboard (in response to the first WM_DRAWCLIPBOARD) while PLD continues writing to the clipboard causes a lot of concurrency/locking issues, including the occasional "unable to open clipboard" error inside PLD. I know that others have complained about this error, so it would be nice if it has the same root cause as the delay problem.