Q1:
Mildly inefficient since luma gets shifted too but much shorter:
Code:
sl = 0
sr = 2
video = core.std.ShufflePlanes(clips=[video, core.std.CropRel(video, left=sl, right=sr).std.AddBorders(right=sl, left=sl)], planes=[0, 1, 2], colorfamily=vs.YUV)
Just make your own collection of helper scripts if you need it often
Q2: Yes