The Catalog Visibility Options plugin sounds like it would do what you want. It can disable the shopping features for “guests” and allow them for registered/logged in users.
Then if you want to add a Quote form you could use Gravity Forms + WooCommerce Gravity Forms Add-ons. You might be able to use the “conditional logic” options in GF to get it to only display the quote option for non-logged in users (not 100% sure on that part though).
The Product Add-on’s extension also gives you the ability to add a checkbox/textbox/radio buttons to a product, however I don’t think the view options can be set on that for guest/registered users.