My understanding is that eventually the old full backups + chain will be removed when my most current chain covers the retension period.
So basically you will always be able to restore backups equalling at least the number you set for the retension period, but possibly not much futher back, is that correct?
That's correct. In your case it is possible that you have the following backup chain: F - (20 incrementals) - F - (19 incrementals). In this case if one more incremental is generated the old chain will be deleted. But until that you can restore up to 41 days back.
Do I have to do that manually, via standalone full backup?
Yes, you can do it that way. You can also use VBR backup copy job
with GFS retention enabled
But what if your retension period is much larger than your montly active full backup cycle?
Then the oldest backup chains will be pruned as soon as the new chain meets retention requirements. In your example with 365 points retention and monthly fulls you'll have something like that:F - (month of incrementals minus 1 day) - F - (month of incrementals minus 1 day) - ...
and so on until the chain hits 365 restore points in total.
After that, the oldest piece of the chain will be pruned as soon as there are enough restore points in the newest part of the chain to comply with retention settings.