Because Syphon presents a single live video surface, and not a series of frames, eliminating duplicates is something of an imprecise science.
Can you try the following and let me know how you get on:
Set up your source patch to send frames at 30 fps
Set up Syphon Recorder to capture at 60 fps
The fps setting in Recorder is a limit, so you should end up with a movie close to the rate of the source. Is it nicer than with Recorder set to 30 fps?