Couldn't you set up the Group Permissions so that you can only view if you're logged in? IOW, the Users group has view permissions (which they should already have) but the Guests group has no view permissions.
If you only want to stop views for older posts, you'd have to setup a "mirror" forum (e.g. a forum named General would have a mirror named GeneralArchive.) Then you move all the old threads to the archive forum and set perms there so Guests have no view access. This would be a lot of work if you have a lot of forums, but it is a possible solution to your problem.
I agree with Gizmo. Your best option is to move to Cloudflare, but you state that you can't do that right now.