Hi,
There’s no really ”best” option in my opinion, it depends on your requirements. In your case since you’re running pretty fresh servers and SCOM versions I would go for an in-place upgrade.
If you decide to do an in-place upgrade you can follow my blog post here: https://thesystemcenterblog.com/2019/03/15/upgrading-to-scom-2019-step-by-step
If you decide for a side-by-side-migration then you’ll of course run on the newest supported Windows Server & SQL Server versions, which would last you slightly longer support wise.
SCOM is still valuable even if you run your workloads in Azure, you can still monitor your workloads with SCOM or use Azure Monitor or combine both.
(If the reply was helpful please don't forget to upvote or accept as answer, thank you)
Best regards,
Leon