Přečtěte si poziční operátor . V tomto případě nepotřebujete hromadné, stačí UpdateMany.
collection.UpdateMany(
Builders<RootDocument>.Filter.Eq("Documents.Id", document.Id),
Builders<RootDocument>.Update.Set("Documents.$", document));
To projde sbírkou a spáruje jakýkoli RootDocument, který má ChildDocument se zadaným ID, a následně jej nahradí poskytnutým dokumentem.