Exposing custom fields to the user in custom type post

No, unless you are prepared to be a bit creative and do some coding.

But what might be good is to try a plugin to handle the selection of all the things you are talking about.

I recommend gravityforms. It is a premium plugin but is capable of many things, such as e-commerce with options like you are describing. It has a fairly easy learning curve, but is also extensible with its own API of hooks and filters that allow you to do a lot of things that interact with the rest of your site or other data types.