I have reason to believe that this strange behaviour resulted from a broken or otherwise incorrect index because luckily OPTIMIZE TABLE did the trick.
Additionally, since we're dealing with system versioned tables, I needed to change the 'alter history' vairable:
SET @@system_versioning_alter_history = KEEP;
After that SELECT [....] gave the same result as SELECT [...] FOR SYSTEM_TIME AS OF NOW() while SELECT [...] FOR SYSTEM_TIME ALL still contained the historical data.