Like NiphraNiphra said, only start using a framework when you can use PHP without a framework (that is, access the database, send headers and content, string processing, data manipulation, etc.). As far as your questions are concerned:
When do I need to use a PHP framework such as CakePHP? When your project grows beyond a few PHP files; the moment you start strongly separating the logic into distinct elements and modularizing/sharing functionality (sessions, etc.) is when you should use a framework.
What are things that this and other similar PHP frameworks offer for me? Abstraction; instead of directly interacting with the database you can use an Object-Relational Mapping (ORM) to manage the structure and relationships between your data in the database. Most framework in many languages provide ORM's to make it easier to interact with the database layer of your application. Similarly, frameworks often separate the layers of responding to user interaction. The most common separation is the Model View Controller (MVC) paradigm, which, to be brief, abstracts database logic into the Model (an interface to the ORM, in many cases), processing requests and interacting with Models into the Controller, and the rendering of the actual HTML/PDF/image/etc. into the View. Frameworks often provide other tools such as routing (to allow for complex processing of the request URI (EG: Mapping the request "http://example.com/users/1" to the controller Users, which then looks up the user Model with the ID of 1) and an abstraction of sessions and other basic structures.
And is it really important to use a framework to be a professional? Not necessarily; frameworks make life easier; but you don't have to use one to be a professional. Frameworks provide handy abstraction and standardization, but they aren't a requirement in most cases.