I moved the antenna to front crossbar right over cab, here is a pic of the connection.
That's a better location. For omni-directional performance (equal radiation in all directions) you want equal ground plane around the antenna. Placing it off to one side will make the radiation pattern lopsided.
I also pulled the cable out of the route I had it in and ran it through the door as a trouble shooting option, but no improvement.
Won't make a difference with coaxial cable. Route it the safest/shortest route. Avoid doors and windows as pinching the cable will introduce a whole host of new issues you don't need.
So with this setup I'm getting SWR of 1.7 at chan. 1 and 2.3 at chan. 40, this might be as good as it gets...
I agree with the others, the SWR you are seeing indicates the antenna is too long. Try removing the spring and see if it comes down to more acceptable levels.
You should be able to do better. When I've run CB's, I use Larsen NMO-27 antennas on permanent NMO mounts on the top of the truck cab. Never had an issue getting SWR down very low. Here's what it looks like on an antenna analyzer.
Just looking at CB channels 1-40. You want to shoot for lowest SWR on channel 19 (center frequency of the CB band, and that should give you equal SWR numbers on channel 1 and 40:
Zooming out and looking at 26-28MHz, you can see the low SWR dip a bit more clearly:
With your SWR being lower on channel 1 than it is on channel 40, it's indicating that the resonance of the antenna is still too low. Shortening the antenna will fix that. How much you need to shorten it is the thing you'll need to figure out. Removing the spring will take a bunch of length off quickly. If SWR improves, then that'll tell you something. Ideally, you want to do the adjustments in much shorter increments, 1/8 to 1/4 inch at a time, no more.
If I understand theory correctly (which I probably don't) if I used a smaller antenna would that mean I need less ground plane? and possibly work better in this installation?
Not quite….
The radiating element (vertical part of the antenna) is frequency dependent. You can coil it around a fiberglass rod and make it "look" shorter, but it's still the same amount of wire. Trying to jam 108 inches of wire (1/4 wavelength at 27MHz) into shorter packages just reduces efficiency. Ideally you want the full 108" whip antenna, but that's a bit excessive on top of a full size truck. The wound whips like you are using are a good compromise if you keep it reasonable. A 4 foot fiberglass antenna should still work well. Making it smaller might look better, but it isn't going to help performance at all. You might get lucky and find a shorter antenna that has better SWR, but low SWR doesn't equal good performance. I can put a 3 inch long 50 ohm terminator on there and you'd get perfect SWR, but your transmit range would be on the order of feet, not miles.
And, the ground plane stays consistent, no matter what antenna you use. Ideally a "perfect" ground plane for CB would be 108" in all directions, or 18 feet across. You won't be able to legally drive down the road with an 18 foot piece of metal sticking out both sides of your truck. You are limited to the size of your vehicle in this case. Making the ground plane smaller isn't going to help anything. Actually, you have a pretty good ground plane as it is. I'd not mess with that part of your install. Focus on getting your antenna tuned correctly.
I think you are on the right track, just take small steps, and be careful about doing anything you can't undo.