Why do we duplicate field data in the field_revision_* tables when revisions are disabled?
That's a great question - I wonder if it's any different in D8. 

The field_data tables, and node table also track the "current vid" which is the current revision id, I guess they felt there had to be at least one.  But it does seem like there should be another way to do this. Maybe they could just store a 0 or something as a flag in the field_data tables current_vid column to indicate there's not a revision.