Поможете оценить Интернет-магазин (MVC) на PHP?
Ну а теперь, собственно, по коду...

1. Работать напрямую с $_POST в контроллерах то еще извращение, появится новое поле вы в контроллер полезете во все 100500 функций? Подсказка - используйте модель для этого.
2. Обрабатывать получаемые данные от пользователя, делая их более безопасными? Не, не слышал.
3. Функция mail отключена на многих хостингах.
4. Создавать новый экземпляр почтовика, передавая ему данные и шаблон письма? Тоже не слышал.
5. const DEFAULT = 6; - волшебное число, лучше передавать его при создании экземпляра модели.
6. getAvailabilityText() просто улыбнуло)))

Как говорится, лень разворачивать проект, но я на 99% уверен, что кроме стандартного CRUD там ничего нет. А сайты это не только эти ваши новомодные MVC, RBAC, Singleton и прочая хрень. В первую очередь это решение проблем конечного потребителя. Хотя да, на кой нам это надо, мы же играем в "выучи фрейм за неделю и начни получать штуку баксов ежедневно"...

В общем, удачи вам))
Если это первое что написал то в принципе для начала не плохо, о и хорошего нечего нет. Вам нужно избавится от статического вызова методов. Сделать нормальное подключение к базе через паттерн одиночка, убрать бизнес логику с контроллера, подружиться с композером, начать использовать пространства имён и многое другое)