Maybe you should look into frameworks again, I would suggest having a look at the Zend Framework, because it's more like a library of components you can use as you see fit, and doesn't really impose a rigid structure you have to follow (like some other frameworks do), though it does suggest a (quite sane imho) project layout. A good starting point would be Surviving the deep end.
Things you haven't mentioned yet, and that could prove useful to know (especially in larger projects) :
- OOP with PHP (design patterns)
- Unit testing (PHPUnit, SimpleTest, ...)
- ORM (Propel, Doctrine)