The interaction is based on a model where tab moves between form elements and a radio group is a single "element".
A checkbox is clearly a single element that comprises one choice, while a group of radio buttons is treated like a single element because they all work together to form a similar choice. Tab moves you between each as they represent a specific piece of data requested by the form.
Note that this model doesn't account for groups of checkboxes offering related, multi-select choices. In this sense it can feel like "choose one" and "choose many" have very different keyboard patterns. This isn't a new problem, and one hopes keyboard users are used to it since it should be the same on most forms. Any solution you might want to try would risk running against muscle memory trained on other systems and actually slow users down.
If keyboard use is a core use case for your system, I would recommend putting sample forms in front of some users to see how they fill things out. If keyboard use isn't that common, I would recommend sticking with established conventions to prevent users from needing to learn new rules that don't transfer.
If interaction consistency is a concern for your use case, you might consider a listbox which can be configured for single- or multi-select and has similar keyboard interactions for both. However, multi-select boxes like this are not that common (compared to checkboxes) so there may still be a learning curve.