Penso che dovrai fare due domande separate qui. Questo è semplicemente troppo condizionale per essere gestito dal parser di query MongoDB.
Quindi dovrai inserire la tua logica in due query separate con la seconda simile a:
$db->akis->update(
array("h" => (string) $_SESSION["_id"], "m" => array('$exists' => true)),
array('$set' => array("i" => $name)),
array("multiple" => true)
);
Correndo uno dopo l'altro.