Can I avoid creating a new revision of every attached field upon entity save?
I have looked around and found one HACKY solution. I think it probably has some serious side effects that you may be able to handle with custom code and db queries. This is definitely not a generic solution.
I did my test on the node entity and every thing worked fine in my 5 min test case. Here is what I did:

function playground_node_presave($node){
  dpm($node);
  // do a query here and check if the value is in the field_revision_table is
  // equal to the value on the node/entity object.
  unset($node-&gt;field_cookies);
  dpm($node);
  // The node will be saved without changing the value of the field and without creating 
  // creating a new entry in the field_revision_table.
}