Can't you just bisect twice. Once to find the PR and a second time within the PR's branch?
AFAIK, if you squash merge, the SCM (intended as the repository, both local and remote) will keep only a single commit; the commits breakdown will be in GitHub's (intended as a service) history.
There's definitely a drawback, and it's bisecting, which is actually a big deal.
Bisecting allows in a semi-automated (depending on the issue) bisecting what otherwise can be a large diff.
But of course, it requires a disciplined history - otherwise, bisecting just won't work.