Позиционные операторы предназначены для массивов, а не объектов.
Поскольку ваши данные являются объектом, а не массивом (который из ключей массива выглядит как ошибка), ваш «лучший» вариант, вероятно,прочитайте объект, определите ключ и отмените его.
т.е.
$id ='4f5596973c9059fc05000000';
$row = $collection->findOne(array('_id' => new MongoId($id)));
$i = array_search('4f548df23c9059f406000004', $row['array_to_be_used']);
if ($i !== false) {
$collection->update(
array('_id' => new MongoId($id)),
array('$unset' => array('array_to_be_used.' . $i => true))
);
}