Not a real solution, but a nice workaround I often use:
Create a new temporary layer in your project and assign a complete white symbology (or transparent / or the color of your background in print composer) to it. Then add this layer to your legend and remove its label. Now you can use it as "dummy placeholder" to create gaps and e.g. move it right on top ...
Use the atlas composer and the lock layers data defined override option
Create a csv (or other file) listing all the maps you want to create, this will be a column labelled layerMap1, layerMap2 containing the layers for each map - this will be in the format "ANIMAL|Basemap"
load the csv into qgis, then in the print composer, set the atlas coverage layer to ...
Update for QGIS 3
As of January 14, 2020, there's an outstanding request for this feature: Composer Attribute Table: Wrap Heading Text #30441
So it looks like the answer is still no. However, anyone interested should watch the linked feature request page for updates.
I'm offering you a solution that isn't elegant, but it works. You can add 2 legends in your print composer:
one with the layers gonsbach and landbedeckung with 2 columns.
a second one with the layers Messtationen and area with 2 columns too.
Add an attribute table to the layout.
In the item properties tab, choose the option to "show only features within a map."
Click the "Attributes" button to open a dialogue that lets you choose which columns to display - turn off all the columns except "Name". In this dialogue you can also edit the displayed column name.
This should give you a list of the ...