I have to disagree with what Shane said.
The current PID controller is fine for +/-2 degrees reliably, i.e. 2x minimum resolution
If theoretically there were external encoder available of, let’s say, 0.1 degrees resolution, then it wouldn’t matter if the PID controller regulated to also 2x minimum resolution, i.e. +/- 0.2 degrees.
But such an external PID controller is not availble FTM, AFAIK.
OTOH, if one could manually adjust the kp, ki, kd parameters in the BP3 firmware for the SAMD cores, then I’m firmly convinced to make even the current encoders work fine fo reliably +/-1 degree by PID-fine-tuning.
BUT AFAIK that is also not feasable FTM.
But after all, as already stated, IMO also +/-2 degrees should match to the OP’s purposes, because already many people also managed to get along with the current Lego encoder resolution capabilities (e.g., David Gilay even for the NXT version of the Mindcuber by simple NXC code, renouncing either accurately working implemented PID controller capabilities).