shameless plug: I initially created webhookrelay for just this case - Jenkins & Github :) Instead of polling, you can start builds on webhook request. It can create one-way tunnels so your Jenkins is not exposed to the internet (for PRs https://webhookrelay.com/blog/2019/04/17/automated-github-pu...). Open source client for webhook forwarding is also available!
Now the project evolved into way more, but still, started from Jenkins, polling and waiting for the build to start after pushing changes.