Since you are using MyISAM, locking during backups will always be an issue. Given that, I would definitely recommend setting up a slave to use for backups (ideally on a separate host).
Have you looked into converting your tables to InnoDB? Given that your work load is write-heavy, you would likely see an increase in performance with InnoDB and a properly tuned configuration.
As for what tool to use; mysqldump works fine for simple cases like this with MyISAM. Otherwise you could look into Percona's Xtrabackup (http://www.percona.com/doc/percona-xtrabackup/), however for MyISAM-only that tool will not give you much extra functionality, but it may be quicker as your data set grows (and better if you convert to InnoDB).
As for the drive question, generally separate is better as long as the disk speeds are comparable. I would recommend a RAID 10 configuration for your data directory for speed and reliability with a write-heavy workload. Ideally your backups would be happening on a separate host or separate drive (with some sort of redundancy; either via RAID or storing the backups on multiple hosts for safe keeping).
Hope that helps!
--
Scott Nemes
MySQL DBA
http://www.linkedin.com/in/scottnemes
http://www.twitter.com/ScottNemes