Deberías aplicar el formato dentro del while para cada elemento de $row que quieras tratar, y antes de hacer la asignación a $resultats[]. Y si son varios valores consecutivos que tienes bien identificados, puedes hacer el formato de una pasada, usando un bucle ('for').
 
Por ejemplo, con este código:  
 Código PHP:
    <?php echo "<pre>";
 
    $coso = array( array(1,2,3,4,5,6), array(3,4,5,6,7,8) );
    
    foreach ( $coso as $id => $row ) {
        
        for($i=3; $i<6; $i++) $row[$i] = number_format($row[$i], 2);
        $otrocoso[] = $row;
    }
 
    print_r( $otrocoso );
 
echo "</pre>"; ?>    
  Obtengo $otrocoso, que es una copia del array $coso pero dando formato con decimales a algunos de los elementos (en este caso los tres últimos) de cada "sub-array" que contiene:  
Código:
 Array
(
    [0] => Array
        (
            [0] => 1
            [1] => 2
            [2] => 3
            [3] => 4.00
            [4] => 5.00
            [5] => 6.00
        )
    [1] => Array
        (
            [0] => 3
            [1] => 4
            [2] => 5
            [3] => 6.00
            [4] => 7.00
            [5] => 8.00
        )
)
  Aplicar esa idea al código que tienes es apenas una línea. 
Un saludo.