An additional comment on question [1]
I find the COLOR OBJECT command can cause a big drop in performance, especially if you use it to colour lots of objects. A better way is to make your own colour textures. They only need to be tiny:
CREATE BITMAP 1,2,2
SET CURRENT BITMAP 1
CLS RGB(x,y,z)
GET IMAGE 1,0,0,2,2
DELETE BITMAP 1
TEXTURE OBJECT 1,1
and question [4]:
indi's idea will work - you could also investigate the SCROLL TEXTURE command - move the background plane with the player object, and scroll the texture to simulate movement.