Well in the pypy case, couldn't this just be a toggle? As in, you as the user guarantee that your type annotations are correct and strict, and if it isn't, then pypy will just blow up in your face when type annotations aren't respected.
I think that's a fair trade off, and easily doable. Those who want it and respect it get the speedup, those who don't don't lose anything.