I had been using this feature for about a month on my iMac without problems until yesterday when it simply stopped working. It would consistently display "Unlocking with Apple Watch" along with a spinning cursor for several seconds and then give up and just present a password field.
I tried various suggestions from this and another thread (restarting all devices, turning handoff off / restarting / turning handoff on repeated for all three devices, removing a nearby external drive, connecting to the 2.4Ghz band instead of 5Ghzetc.), but nothing worked.
Finally I noticed that on my mac I was signed into iCloud using *.me.com email where on my phone I was signed into iCloud using *.mac.com email address. After logging out of iCloud on my iPhone and then logging back in using the *.me.com version everything worked perfectly again.
I have no idea if this was a fluke or something that might be generally useful. Also it may have been that simply signing out of iCloud on my phone and signing in again was what finally fixed things and changing the .mac iCloud ID on my phone to .me had nothing to do with it. Also FWIW, all three devices (iMac, iPhone, watch) were running the most recent OS versions.