Is the database table "field_revision_body" used in a core module or can I just drop it?
Both tables (field_data_* and field_revision_*) are added and used by the field SQL storage module in core. The existence of both tables make it possible to store revisions of field data. There's no way to use that storage system without both data_* and revision_* tables.

So don't delete it :)

There are modules out there defining alternative storage systems without using revision tables (e.g. Field SQL norevisions) but I'm not sure how difficult it would be to convert an existing database to use that system.