1. Получение четкой задачи.
2. Согласование сроков.
3. Получение предоплаты.
4. Работа в срок.
5. Сдача.
6. Получение оплаты.
Поскольку со сроком согласились или даже сами его установили, то проблем в него уложится нету. Если есть, то не надо работать на фрилансе.
Если есть проблемы с оценкой времени, используйте программки для учета. Довольно быстро все становится понятно.
Также интересует насколько хорошая практика делать правки прямо на сервере
Ну как она может быть хорошей, сами-то подумайте? Откатывать потом из бэкапа хостера? А если там один архив на десяток сайтов?
Вариантов может быть много, но копия "как было" всяко должна остаться.
Обычно к таким запасным копиям пишу срок хранения. Типа "project-name-backup-delete-09-2017".