db.messages.find( { headers : { From: "reservations@marriott.com" } } )
This queries for documents where headers equals { From: ... }, i.e. contains no other fields.
db.messages.find( { 'headers.From': "reservations@marriott.com" } )
This only looks at the headers.From field, not affected by other fields contained in, or missing from, headers.