I've had this problem as well, and sadly, it's is really a problem with Yahoo's infrastructure, and not so much something wrong with empathy (in other words, you won't be able to stop empathy from thinking you have genuine friend requests).
The best I can suggest to you is to report a wishlist bug on empathy :(.
You could try pidgin but to my memory, that doesn't make it too much easier to dismiss the contact spam in one go, though it does handle it better than empathy.
As grim as it sounds, I'd also suggest moving away from yahoo for IM.