поставь в форму флаг того, что файл загружали. и, если на стороне сервера $_FILES пуст - то выводи сообщение об ошибке.
если файл отсекается по размеру - $_FILES будет пуст и никакого флага ошибки не будет...
сервер обычно стартует при загрузке системы.
ну, в директорию проекта собрать из исходников можно, да.
переопределить директорию данных? скорее всего можно в файле конфигурации
Модель - это структура доступа к данным.
Вообще, модель стоит разделить на два класса: что-нибудь автогенерируемое (только геттеры / сеттеры и все) и что-то для доступа к данным (типа сложных выборок, поисков и т.п.).