The "table of contents" generates links that will become links a user can select to find data in the report and also become bookmarks in an exported PDF. For example, a table of weekly orders could have a table of contents based on customer name. Selecting one of the customers takes you to the point in the table (or the page) where order details are located for the selected customer.
The "bookmark" is an internal name that you can give to report items for identification. You can then load just that item using the JavaScript API, Dashboards or use them in scripts with their name. For example give a name to a chart and then you can load just that chart from the report.
Concerning the bookmark overlap, this seems to be an issue with Acrobat Reader. Try upgrading to the most recent version of Reader and try setting your PDF bookmarks to "wrap long bookmarks" as described in https://developer.appway.com/screen/ForumDisplaySingleThread/selectedThreadId/1384171688575.