@Shannon Vazquez yeah, polarization mismatch is almost certainly what you're seeing — cross-polarization loss can be anywhere from 20-30dB in the worst case, which would absolutely explain why it falls apart at range even though the short-distance link holds fine (close in, you've got enough margin to absorb the penalty, but it compounds badly as path loss increases).
The 50km spec is drone-to-drone, so both nodes are essentially in free space with matched orientations — your rooftop-to-vehicle scenario is a different geometry entirely, and mixed polarization is one of the first things that'll eat your link budget in that configuration. The fix you found (going vertical on both ends) is the right call if you can manage it mechanically.
If the vehicle mount makes vertical impractical, a circular polarized antenna on the mobile end is worth looking at — it takes a consistent ~3dB hit compared to a perfectly matched linear pair, but it's immune to the orientation problem entirely, which is a much better trade than the 20dB+ you're losing now with cross-pol.