Such a behavior would be observed if you work with the visual elements, i.e. GridViewCells to assign the CheckBox's checked value. Since the virtualization of RadGridView is turned on by default, its elements are created when they should be brought into view and they are also reused on scrolling. You can take a look at this article for a reference on UI Virtualization.
Would you please set EnableRowVirtualization="False" and "EnableColumnVirtualization="False" for the GridView? Does this resolve the problem?