I would probably tackle this by creating a separate module called ecommerce_product_options.
As I understand it, you want to be able to define an arbitrary number of 'add-ons' for an order item that affect the price of that item.
To do this, you'll probably want to create a ProductOption dataobject, which has a name & price.
Create a decorator for Product that adds has_many 'Options' => 'ProductOption'
Create a decorator for Product_OrderItem that has_many 'Options' => 'ProductOption', and also contains a updateUnitPrice function, which totals the options, and adds to the existing unitPrice. You'll probably also want to implement the updateTableTitle function to add the selected options to the title.
For adding options, you might want to create an OptionsForm in the product decorator that can be added to the Product.ss template. When submitted, the form would add the selected option, and return to the product page.
You might also want to look at creating urls for adding / deleting options. I'm not sure how feasible it is to decorate ShoppingCart...which would be the best option, otherwise create your own controller for that.
Another thing to be aware of is what version of eCommerce you'll use do this on. Perhaps developing it on trunk would be an idea to use the latest code, and then stick with the next release when it is out.
You're more than welcome to contribute this module into the ss eCommerce SVN repository :P
hope this helps,
Jeremy