Try out this….
1. Try to do telnet on port 25 of yahoo and check if success sending a test email using telnet.
2. Create SMTP Connector each for Yahoo and specify there MX record IP address in the smarthost
3. Check if reverse PTR is configured
Remember, there are few domains which will not receive email from, if don’t have valid ptr record
4. If the above will not help, try eliminating ur AV
NOTE: If u r using DNS connector, then check with ISP, and Sender Policy Framework.