Why is inbound email activity uneditable in case activity list?
This turned out to be an issue with the specfic version (4.7.29). In later versions, inbound emails are not editable at all through the GUI. Where an edit button exists, clicking it leads to "access denied", even for administrator with all permissions.

In my case I had a requirement to allow changing the status of the activity to record whether someone had looked at the email or not. Since this is not possible through the GUI, I ended up writing some custom code to do this, and customised the template to add a "Mark as read" button to fire said code.