You want to take a final tail-log backup on the 2008 system at cutover...this will be the final log file for the database(s) and will take the database offline (so it cannot be accessed anymore).
You cannot assume the secondary is caught up...you need to validate that all transaction log backups have been applied including the final tail-log backup before bringing the databases online on the new server.
Before changing the compatibility level - you need to test and validate the application and all code. Have you done that yet? If not...then you really need to plan for that testing and validation. There are many changes that can and will impact performance - as well as some code that may no longer work or doesn't work as well because of the changes.
To resolve these differences - you might want to consider enabling query store with the current compatibility and capture the data for at least a month. You can then identify any queries that have an issue and address those before changing the compatibility mode. But that only goes for code in SQL Server - any code in the application(s) will also need regression testing.