Next task is to see if I can adjust the front porch.
Yep, open ArcadeOSD, go to the resolution you want to edit, then into horizontal geometry. You adjust the number of lines in there, with ESC to go back if something goes wrong. You can save the resolution for use in other emulators, but go into the edit modeline option and write down the three horizontal timings in ms. You then go into mame.ini and change your monitor to custom (it should be already) and update the crt_range0 line with your improved timings. See line from the generic_15 preset below, with relevant timings highlighted. Note that this only works for horizontal geometry to correct overscan, and doesn't work for vertical geometry at all.
crt_range0 15625-15750, 49.50-65.00,
2.000, 4.700, 8.000, 0.064, 0.192, 1.024, 0, 0, 192, 288, 448, 576
You can also create a new custom present in your monitor.ini file, and redo your modelines with VMM. It's worth doing this if you're only a week or two into setting up, as i can guarantee you'll want to do the modelines over a few times
That image looks ok, actually. One way to tell would be to get a grid picture, fullscreen it in windows photo viewer when the desktop is at 240p and then again at 480i and see if there's a difference in screen flicker and resolution. A 240p grid from the PC will be slightly less detailed, but will flicker a lot less if the J-rok is outputting 240p.
Next might be the issue of it outputting in discrete bands, but mb the supplier could clear that up.