Hi,
You mentioned that the SEPM Console shows the latest virus definition date for the client. However when we check at the client end it shows an old definition date. Can you please check the following ;-
>>Check the policy serial number at the SEPM Console as well as on the client. It should be the same.
>>In case it is not then there could be a communication issue.
>>On the client side right click on the endpoint icon with the green dot and select update policy and check whether it made any difference.
>>If you are able to ping the client and vice versa check for any configured Firewall it could also cause this one way communication issue.