At my last job, we migrated databases from server to server every day, with no downtime.
Well, there was only brief downtime when we switch traffic over to the new server, but it was less than 1 second.
The solution used replication as you know. We had to create a backup of the source instance quickly. For this, we used Percona XtraBackup, which is a free physical backup tool, so there is no dump & import delay.
It's not safe to move files around yourself as a means of physical backup. You're likely to corrupt your database that way.
You asked about the difference between MyISAM and InnoDB tables with respect to the binary log. There is no difference. Both table types are logged in the same binary log, and the sequence of the binary log is important. If you copy the MyISAM tables physically, and then dump InnoDB as a separate step, you will miss any updates to the MyISAM tables.
Actually the truth is that the binary log is independent of storage engine. It records logical data changes, so in theory the same table could be in MyISAM in one instance and InnoDB in the replica instance, or vice versa.
Percona XtraBackup allowed us to make a physical backup without any downtime. It does its work without blocking continuous use of the database.
Then transfer the backup to the new server, use it as a new datadir, and configure replication. A step by step guide for this process is in the Percona XtraBackup manual.
Percona XtraBackup can back up MyISAM tables, but it must take a global lock while it's doing that. So your MyISAM tables should be very small, or even better if you can convert them to InnoDB. Then Percona XtraBackup can perform the backup entirely online, with no global lock. Note that in MySQL 5.x, some of the system tables in the mysql
schema must still be MyISAM, but that's okay because they are small.
If we then want to switch traffic from the source to the replica, we wait until replication has caught up so the two instances are in sync. Then set both instances to read-only mode, and wait for the final updates to be replicated (this should only take a moment). Then make all client applications connect to the replica as their preferred database server (you could use a DNS update, for instance). Finally, disable read-only mode on the replica, and reset its replica configuration.
P.S. I Agree with Rick James that MyISAM should be avoided. InnoDB has better performance, and more features. MyISAM is getting no new development, and it has lots of disadvantages, for example it doesn't support any of the ACID properties.