ListOfItems
should probably be referencing another collection, rather than be an embedded array. You can either include or not include fields (including sub-documents) when querying MongoDB, but I'm not aware of a way to filter, limit, or skip items in the subdocument on the MongoDB side.
Generally, if you're familiar with Domain Driven Design, you'd Embed 'value objects' (i.e. things whose life doesn't matter outside the context, e.g. the value of a person's email address; you don't need to change track it you just need the current one(s)), and Link 'entities' (things which have meaning outside the context, e.g. perhaps an Address may go through multiple owners in a given system, and so you might track that in its own collection).
Also, as a general rule, you Embed things if you'll always want them to be fetched at the same time as the containing object. If you sometimes want them and sometimes don't, that's OK too, but if you have a list and only want some of them based on some query parameters, that's starting to indicate that they have contextual meaning of their own, and you might consider splitting them out into their own collection.