Si está ordenando de forma descendente y ve null
valores al final, ese sería el comportamiento predeterminado de la ordenación.
Realmente no se puede hacer mucho para cambiar ese comportamiento, pero una solución que le dará los resultados que está buscando es hacer dos consultas en lugar de una:
db.Collection.find( { a: null } );
db.Collection.find( { a: { $ne: null } } ).sort( { a: -1, b: 1 } );