If the spring isn't part of the antenna, I'd try it without the spring, too.
I think the main issue may be the long, close, parallel run of the antenna and the right rear pillar of the truck. It might be unavoidable, but it's not a good thing....it looks to be just a couple of inches away, and if it is, that's close enough that it would seem like it might operate more like a feed line than an antenna.
Just have a couple of suggestions/thoughts:
If you can find a local ham w/ an antenna analyzer, that would save you some time. Way easier and faster to troubleshoot things with something like an MFJ-259 than a radio and SWR meter. This would also quickly tell you if the problem you're seeing is the cable/antenna or the radio. The next best thing would be a cross-needle SWR meter. (The only kind to have, in my opinion.)
You probably already know this, but SWR is only important in a limited context. By that, I mean high swr *might* mean you have an antenna problem or a cabling problem. But not always. High SWR is mostly important in that it can damage a radio or cause the power to be reduced to protect the radio. But if this is only happening on a couple of channels, maybe because of interactions between the antenna and truck, then maybe the simplest solution is to not use those channels.
Finally, if I had to go back and forth into a garage every day, and wanted a CB antenna, I'd get a base loaded antenna w/ a steel whip, and mount it on the side of the hood, near where many cars have their FM antennas. I'd find one long enough to make the top about 7' high, or less. If the whip is flexible, that should get you through the average parking garage with only hitting the support beams and maybe some pipes. Won't hurt the beams, pipes, or antenna. I do that all the time with a roof mounted 2-meter antenna on my truck. You can't do that with a fiberglass antenna, you'll crack it eventually.
One other thing to try, would be changing the bracket and moving the antenna back a couple of inches.