@philip max great question and honestly one more people should be asking before they deploy long-duration tracker builds rather than after.
I haven't personally put it on a spectrum analyzer for hours straight, but the STM32WB07 at the core of this module does have documented TX power management behavior — the front-end amp is where I'd focus suspicion first rather than the baseband. The gradual RSSI drop pattern you're describing at 20-30 minutes is classic thermal compression on an external PA, not a hard cutoff, which is why you're not seeing error flags. The amp is just losing gain quietly as junction temp rises, exactly as you suspected.
28C ambient sounds fine but what matters is the die temperature on the PA, and in a compact module with no active cooling that can climb faster than you'd expect under continuous TX. Before you redesign your duty cycle, I'd rule out a few things — check if the RSSI drop correlates with the module housing temperature you can feel by hand, and if you have access to a second identical module as a reference transmitter running the same test, do a back-to-back comparison to isolate whether it's the TX side degrading or something on your RX path.
The firmware repo is public on GitHub so it's worth pulling it and checking whether there's any software-side power management that could be stepping down TX level on a timer or after a packet count threshold — that would show up as a sudden step rather than gradual compression, which helps narrow it down. If you want to go deeper, Moamen is pretty active here and this is exactly the kind of front-end characterization question where getting the actual design notes would save you a lot of guessing.