Probably Windows. So, I have to make my gentle pitch that all things website-maintainance related are better done on Linux. You are (probably) running your website on Linux. Things are so much easier if you are also running Linux on your desktop.
To answer your question: rsync/rdiff. But I think only available on Linux. Not sure if this will actually use FTP (it is designed to run over ssh) but not sure you actually need to use FTP. What you really need is to get files from "here" to "there" if they are new.
(FTP is insecure, and I don't recommend using it, except to provide a public download area.)
Unison is another possibility, and it is available for Windows.
Otherwise, I think you will find there are dozens to hundreds of Windows GUI programs available that will do this. IMO, overly-complex and fidgety, as most will follow the typical Windows pattern of implementing their own scheduler and scripting language that you will have to learn.