Also…
3) Shimano/Campag incompatibility is in the cassette spacing, not the derailleur? i.e. if the shifter is indexed for Shimano, will the mech work?
No, Shimano 7/8/9/(and road 10 but not Tiagra 4700!) speed mech ratio is 1.7, Campag 9 speed is either 1.4 (old Campag 9sp) or 1.5 (new Campag 9 speed), so you need to factor that in as well.
Assuming your Veloce mech is ‘new’ 9 speed with a shift ratio of 1.5, and you’re going to run a ‘normal’ 7 speed cassette with cog pitch of 5mm (but with one sprocket removed) then you need a shifter that pulls about 3.3mm of cable per shift, of which sadly there are none!
No Shimano index shifters since 6 speed have pulled more than 3mm of cable per click except newer MTB 10 and 11speed. A Shimano 6 speed shifter will pull 3.2mm of cable which is close, but not close enough, but…
3.2 x 1.5 = 4.8
And 4.8 is Shimano 8 speed cassette cog pithc, so if you cna find a Shimano 6 speed indexed shifter, and use an 8 speed cassette with one (or two) cogs removed you could make it work, but finding a decent 6 speed indexed shifter is going to be a ball-ache.
Campagnolo 8 speed shifters pull 3.5mm though, and mated with an ‘old’ Veloce 9 speed mech will index to 5mm cog pitch (Shimano 7speed, Campag 8 speed) so that could be an option if your mech is ‘old’ 9 speed.
Beyond that you’re now into the realms of either custom spacers in the cassette, or using a different mech, there are a lot more options available if you’re willing to use a normal 1.7 ratio Shimano mech instead…
There’s also potential options with alternate cable clamping/routing if the mech allows it, ie: Shiamno ‘Hubub’ style or the Alternate route/clamp methods used on the old 8speed Dura Ace.