That Order is an object but I'm quite certain is NOT a Domain object. Validate() and Fulfill() have no place there, but that's another story.
It doesn't matter if you're using an ORM, it does matter how the object state is stored. In your case the most straighforward way is to either use AutoMapper to map from EF entities to the Order or (and I favor this approach) to have a OrderStateSave DTO which will be passed as a constructor argument.
Personally I prefer to serialize directly the object so restore is a trivial deserialize. To keep it simple, this means I have a column Serialized next to the PK column. It's a additional step when saving but it's easy one.