I want to restrict users from having read access to user information lists within my entire farm. Is this even possible? If so, how can I achieve this with powershell?
If your User Information List (single Site Collection) contains information about organizations that you don't want everyone to see, then move that information somewhere else. For example, you could built a Personnel roster that contains everyone in your organization, and limit access to that roster. Then, remove the private information columns from the User Information List.
If this information is in Active Directory, then everyone on your network can see this information anyway, if they know where to look.
If you are using User Profile Service and updating all your site collections from Central Admin, then you can control which fields are shared with the site collections.