@yuke that's just the nature of scaling from one resolution to another. different emulators won't help here, especially as beetle will only run (very slowly) in exactly the same resolution'd software mode, as you won't be able to run it higher resolution open gl mode with the pi's GPU featureset. (even the higher resolution mode I think is a factor of the original resolution anyway, so may still have the issue).
you could eliminate the artefacts by running with integer scaling turned on (you'd get small/large borders, though).