Unfortunately with Backbone (especially Backbone Views) there's not really a "proper" way to do things. There's no reference convention. A lot of people who use Backbone only use the Models/Collections and don't use the Views at all.
In my opinion I would scrap having a view for a collection unless it's actually doing something important. Use the hierarchy App > ModelCollection+ModelViewCollection.
So in your case:
ItemsApp (Backbone.View)
--ItemCollection (Backbone.Collection)
--Item (Backbone.Model)
-- SellerCollection (Backbone.Collection)
--ItemViewCollection (Array)
--ItemView (Backbone.View)
-- SellerViewCollection (Array)
So your ItemsApp would create and destroy ItemViews as the ItemCollection changes (listen to the events).
The ItemView is responsible to know when the user selects it based on an event. It can then choose to populate the SellerCollection on its model when it is selected. When unselected it could clear that collection. It also listens to changes in the SellerCollection and adds and removes views for each seller.
I don't think there's any built-in method to store a list of Backbone.Views, you probably just want to create your own array. It's up to you to keep track of the views, since a model itself shouldn't have a reference to its view.
It's worth having a global event object to act as a sort of messaging system. Backbone.View implements Backbone.Events so you can declare your app object globally and then listen to any events. You should only use that when you need to though, otherwise you should just listen to events directly instead of triggering them globally. For example, your ItemView may have a "Back" button which raises an event on itself called "back", while your AppView is listening to the events on the the active ItemView and when it wants to go back the AppView will make the necessary changes to the DOM and de-select that item.