How long can the log reader agent run for before a restart will do it some good?
I think it depends on your environment and how busy it is but I support quite a few environments that are very stingy with their patches because they have incredibly low surface areas and end up with reboots/SQL restarts pretty infrequently (a few times a year) and the log reader agent isn't restarted outside of this schedule and there are no issues.

If your environment is high transaction and you are experiencing issues with the cleanup jobs on distribution and are running a local distributor you may see a benefit from restarting but, in general, I have found no need to worry about restarting the log reader agent.

I don't believe Microsoft has any particular guidance so this is a YMMV type of question but I think you'll be fine to not restart it outside of your normal patching and reboot/restart policy. As long as you monitor performance and look for issues and symptoms with your replication environment you'll be fine IMHO.