1. В качестве справочника я использую
www.php.net/manual/en/index.php.
2. OpenCart я не видел, но порекомендовал бы взять какой-нибудь framework и писать приложение, используя его. Я бы порекомендовал Kohana3 как наиболее простой и быстрый в освоении. Своего шаблонного движка в Kohana3 нет, но можно прицепить внешний. Рекомендую Twig.
3. Нарушать общепринятый подход разделения классов и файлов не рекомендую, лучше хранить каждый класс в отдельном файле. Такой подход имеет и практическое значение. Если реализован autoload, то система должна точно знать, где лежит нужный класс.
4. Самой удобной из бесплатных IDE для меня оказался Netbeans. Сгенерировать диаграмму классов для таких языков как PHP — довольно таки нетривиальная задача.
5.2 MVC обязательно нужен! Учитесь правильно писать с самого начала. Системы, написанные без разделения логики и представления написать можно, но вот сопровождать практически нереально.
Проблема низкой производительности довольно-таки надуманная. При использовании autoload сотни файлов на подгружаются. Писать масштабируемое решение исходя из «вдруг проект выстрелит» я бы не советовал.
6. PHP может и не самый совершенный ЯП, но в умелых руках, думаю, не хуже чем Ruby или Python. Мне повезло в том плане, что я сперва научился писать на Java, а осваивая PHP уже имел чёткое представление о том, как должна выглядеть архитектура приложения.
А вот писать магазин с нуля я бы не советовал. Для начала я бы посоветовал поставить магазин на типовом движке и когда выяснится, что тема действительно пошла, тогда уже можно подумать о написании своего сайта. Но не факт, что потребность переписать сайт вообще возникнет.