parece-me que você realmente não precisa de 2 instâncias nginx para obter a separação que você deseja.
Você tem 3 agentes interagindo: nginx, app1 e app2. Neste cenário, o nginx na verdade não manipula os dados diretamente, ele simplesmente encaminha os pedidos HTTP de entrada para o app1 ou o app2, consequentemente ele não tem nenhum dado para vazar.
Parece-me que o que você realmente quer é ter os 2 aplicativos django sendo executados como usuários diferentes, com permissões configuradas para que o app1 não consiga obter os dados do aplicativo 2 (exceto através do resto-api).
Você não especifica como o nginx fala com os aplicativos, mas qualquer um dos mecanismos usuais (fastcgi, reverse proxying, scgi, ...) torna bastante fácil ter um processo separado para cada aplicativo.
No lado do nginx você pode ter separação limpa simplesmente tendo 2 serverblocks, cada um com seu próprio subdomínio / domainname.
Para mais tranquilidade, você pode adicionar algumas diretrizes link ao componente B nginx config para ter certeza de que ele aceita apenas referências externas / componentA na URL especificada da API REST