Alla fine sei fottuto. Non c'è nessun modo (in mongodb) per garantire integrità dei dati in tale scenario, poiché mancano relazioni in generale e chiavi esterne in particolare. E non ha senso creare controlli a livello di applicazione. Non importa quanto siano elaborati, possono comunque fallire (quindi "nessuna garanzia").
Quindi o incorporare (in modo che i dati correlati siano sempre presenti, direttamente nel documento) o abbandonare la speranza di dati coerenti.