The prerequisite before introducing the first 2016 domain controller: domain functional level needs to be 2003 or higher
I'd use dcdiag / repadmin tools to verify health correcting all errors found
before starting any
operations. Then stand up the new 2016, patch it fully, license it, join existing domain, add active directory domain services, promote it also making it a GC (recommended), transfer FSMO roles over (optional), transfer pdc emulator role (optional), use dcdiag / repadmin tools to again verify health, when all is good you can decommission / demote old one.
Optional but recommended is migrating sysvol replication from older FRS technology to DFSR (if not already)
https://techcommunity.microsoft.com/t5/Storage-at-Microsoft/Streamlined-Migration-of-FRS-to-DFSR-SYSVOL/ba-p/425405
The file server could be migrated using the storage migration service.
https://video2.skills-academy.com/en-us/windows-server/storage/storage-migration-service/migrate-data
that being said, it isn't recommended to run other roles on a domain controller. One option may be to install the new 2016, add the hyper-v roles (as only role on host, then stand up two virtual machines, one for active directory domain services and other as application server.
The DHCP scopes could be exported, then imported on new server.
https://video2.skills-academy.com/en-us/powershell/module/dhcpserver/export-dhcpserver?view=windowsserver2022-ps
https://video2.skills-academy.com/en-us/powershell/module/dhcpserver/import-dhcpserver?view=windowsserver2022-ps
--please don't forget to upvote
and Accept as answer
if the reply is helpful--