ok so we have cache file called cache.headerMenu-38.php located in /wcf/cache/ but if I will delete or rename it this file will be created again.
So PLEASE PLEASE PLEASE and once again PLEASE tell me where menu items are stored and which class manipulates them (adding, removing, modifying etc.) ?
These items are located in a database table: wcfX_header_menuItem.
You can find here a plugin to manage these items.
You only edit the cache-resources what will re-created again and again if it is needed.
The package is german, but i think it is easy to understand how does it works.