1) on editing the eCart object, it needs to read the object file to determine the settings that are being used. your hand coding is not recognized by the translator that reads the code and translates it to the settings. this is causing the error.
2) No, once you start hand coding the eCart object file, you will not be able to use the Object Editor to make changes, even if it does not generate errors, it would over write your custom coding, since it would not be recognized by the editor.
instead of using the hand coding for adding the giftwarp charge, you can do this on the calculations screen by editing the true price calculation to:
((abs([giftWrap] == 'yes')?6:0) + [Price]) * [Quantity]
undo the hand editing, then edit the cart object using the above calculation.