**Edit:** I've found the error I've had, fixed it, and generalized the solution:

The new function `denseStreamPlot` is now 4 different functions that you could use:

    Subdivide2D[{xmin_, xmax_, nx_}, {ymin_, ymax_, ny_}] := 
     Tuples[{Subdivide[xmin, xmax, nx], Subdivide[ymin, ymax, ny]}]
    Subdivide2D[{xmin_, xmax_}, {ymin_, ymax_}, n_] := 
     Subdivide2D[{xmin, xmax, n }, {ymin, ymax, n}]
    AddPoints[p1_, p2_] := {p1[[1]] + p2[[1]], p1[[2]] + p2[[2]]}


    getStreamPointsBiDiagonal[{xmin_, xmax_}, {ymin_, ymax_}] := 
     Module[{innerCellPoints, lastSets, sets}, 
      sets = Partition[
        Subdivide2D[{xmin, xmax, n - 1}, {ymin, ymax, n - 1}], n];
      lastSets = {sets[[-1]], (Transpose@sets)[[-1]]};
      sets = sets[[;; -2, ;; -2]];
      innerCellPoints = 
       Table[{i (ymax - ymin)/(
          k (n - 1)), (1 - (-1)^i)/2 (ymax - ymin)/(n - 1) + 
          i (-1)^i (ymax - ymin)/(k (n - 1))} , {i, 0, k - 1}];
      sets = Join[
        Flatten[Table[
          Table[AddPoints[pt, #] & /@ set, {set, sets}], {pt, 
           innerCellPoints}], 1], lastSets]]

    SetAttributes[denseStreamPlot, {HoldAll}];
    denseStreamPlot[expr_, {x_, xmin_, xmax_}, {y_, ymin_, ymax_}, 
      streamPointsMethod_Symbol: getStreamPointsBiDiagonal, 
      opts : OptionsPattern[]] :=
     Module[{innerCellPoints, lastSets, sets},
      Show[StreamPlot[expr, {x, xmin, xmax}, {y, ymin, ymax}, 
          StreamPoints -> #, opts] & /@ 
        streamPointsMethod[{xmin, xmax}, {ymin, ymax}]]]

In here, the function `denseStreamPlot` plots the actual graph, and the function `getStreamPointsBiDiagonal` gives the point-sets for the streams. For example, the code

    n = 6;
    k = 10;
    GraphicsRow[{denseStreamPlot[{-1 - x^2 + y, 1 + x - y^2}, {x, -3, 
        3}, {y, -3, 3}, ImageSize -> Medium],
      Show[{denseStreamPlot[{-1 - x^2 + y, 1 + x - y^2}, {x, -3, 
          3}, {y, -3, 3}, ImageSize -> Medium, StreamStyle -> "Line"],
        ListPlot[Flatten[getStreamPointsBiDiagonal[{-3, 3}, {-3, 3}], 1], 
         PlotStyle -> Red]}],
      denseStreamPlot[{-1 - x^2 + y, 1 + x - y^2}, {x, -3, 3}, {y, -3, 3},
        ImageSize -> Medium, StreamStyle -> "Line"]}
     ]
produces
[![enter image description here][1]][1]
where the red dots are the plot-points. `n` is the division of the region to a grid of `n` by `n`, and every cell in this grid is divided into `k` points inside the cell, and it's seen in this plot.

I've kept the option to change the StreamPointFunction as you will, so, for instance, define

    getStreamPointsDiagonal[{xmin_, xmax_}, {ymin_, ymax_}] := 
     Module[{innerCellPoints, lastSets, sets}, 
      sets = Partition[
        Subdivide2D[{xmin, xmax, n - 1}, {ymin, ymax, n - 1}], n];
      lastSets = {sets[[-1]], (Transpose@sets)[[-1]]};
      sets = sets[[;; -2, ;; -2]];
      innerCellPoints = 
       Table[{i (ymax - ymin)/(k (n - 1)), 
         i (ymax - ymin)/(k (n - 1))} , {i, 0, k - 1}];
      sets = Join[
        Flatten[Table[
          Table[AddPoints[pt, #] & /@ set, {set, sets}], {pt, 
           innerCellPoints}], 1], lastSets]]
and run the same line of code above, only with the `getStreamPointsDiagonal` function to get

    n = 6;
    k = 10;

    GraphicsRow[{denseStreamPlot[{-1 - x^2 + y, 1 + x - y^2}, {x, -3, 
        3}, {y, -3, 3}, getStreamPointsDiagonal, ImageSize -> Medium],
      Show[{denseStreamPlot[{-1 - x^2 + y, 1 + x - y^2}, {x, -3, 
          3}, {y, -3, 3}, ImageSize -> Medium, StreamStyle -> "Line"],
        ListPlot[Flatten[getStreamPointsDiagonal[{-3, 3}, {-3, 3}], 1], 
         PlotStyle -> Red]}],
      denseStreamPlot[{-1 - x^2 + y, 1 + x - y^2}, {x, -3, 3}, {y, -3, 3},
        getStreamPointsDiagonal, ImageSize -> Medium, 
       StreamStyle -> "Line"]}
     ]
[![enter image description here][2]][2]

The old errorous function can be reobtained as a special case of the above code:

    n = 2;
    k = 150;
    GraphicsRow[{denseStreamPlot[{-1 - x^2 + y, 1 + x - y^2}, {x, -3, 
        3}, {y, -3, 3}, getStreamPointsDiagonal, ImageSize -> Medium],
      Show[{denseStreamPlot[{-1 - x^2 + y, 1 + x - y^2}, {x, -3, 
          3}, {y, -3, 3}, getStreamPointsDiagonal, ImageSize -> Medium, 
         StreamStyle -> "Line"],
        ListPlot[Flatten[getStreamPointsDiagonal[{-3, 3}, {-3, 3}], 1], 
         PlotStyle -> Red]}],
      denseStreamPlot[{-1 - x^2 + y, 1 + x - y^2}, {x, -3, 3}, {y, -3, 3},
        getStreamPointsDiagonal, ImageSize -> Medium, 
       StreamStyle -> "Line"]}
     ]
[![enter image description here][3]][3]
**Original Answer:**
I've used @Jens's approach to create a uniformly-spaced answer.
Just copy the following functions:

    n = 10;
    k = 15;
    SetAttributes[denseRandomStreamPlot, {HoldAll}];
    denseRandomStreamPlot[expr_, rng1_, rng2_, opts : OptionsPattern[]] :=
      Show@Map[
       StreamPlot[expr, rng1, rng2, 
         StreamPoints -> 
          Transpose[{RandomReal[rng1[[2 ;;]], #], 
            RandomReal[rng2[[2 ;;]], #]}], opts] &, ConstantArray[n, k]]

and 

    SetAttributes[denseStreamPlot, {HoldAll}];
    denseStreamPlot[expr_, {x_, xmin_, xmax_}, {y_, ymin_, ymax_}, 
      opts : OptionsPattern[]] := Module[{nn, samp, sets},
      sets =
       Table[Transpose[{Subdivide[xmin, xmax - (xmax - (xmin))/n, n - 1], 
           Subdivide[ymin, ymax - (ymax - (ymin))/n, n - 1]}] + 
         Transpose[{ConstantArray[i (xmax - xmin)/(n k), n], 
           ConstantArray[i (ymax - ymin)/(n k), n]}], {i, 0, k}];
      Show@(StreamPlot[expr, {x, xmin, xmax}, {y, ymin, ymax}, 
           StreamPoints -> #, opts] & /@ sets)]

In here there are two functions - `denseRandomStreamPlot` & `denseStreamPlot`. `denseRandomStreamPlot` is just an encapsulation of @Jens's anwer. Meaning that the code

    n = 50;
    k = 20;
    GraphicsRow[{denseRandomStreamPlot[{-1 - x^2 + y, 
        1 + x - y^2}, {x, -3, 3}, {y, -3, 3}, ImageSize -> Medium],
      denseRandomStreamPlot[{-1 - x^2 + y, 1 + x - y^2}, {x, -3, 
        3}, {y, -3, 3}, ImageSize -> Medium, StreamStyle -> "Line"]}]
outputs (I think it's better with arrows)
[![Random plots][4]][4]

The other function is my attempt to do the same thing while using different evenly-spaced substitutions of the 2D region. Meaning that the code,

    n = 10;
    k = 20;
    GraphicsRow[{denseStreamPlot[{-1 - x^2 + y, 1 + x - y^2}, {x, -3, 
        3}, {y, -3, 3}, ImageSize -> Medium], 
      denseStreamPlot[{-1 - x^2 + y, 1 + x - y^2}, {x, -3, 3}, {y, -3, 3},
        ImageSize -> Medium, StreamStyle -> "Line"]}]

gives

[![enter image description here][5]][5]

Note that the evenly-spaced points method doesn't work properly in this case (I don't know why), but it works quite well for other fields I've tried. For example, in the case of a simple pendulum,

    n = 10;
    k = 10;
    denseStreamPlot[{p, -Sin[\[Theta]]}, {\[Theta], -\[Pi], \[Pi]}, \
    {p, -4, 4}, StreamColorFunction -> "Rainbow"]

produces

[![enter image description here][6]][6]


  [1]: https://i.sstatic.net/HLkzI.png
  [2]: https://i.sstatic.net/BAlfB.png
  [3]: https://i.sstatic.net/BrDKn.png
  [4]: https://i.sstatic.net/qyO01.png
  [5]: https://i.sstatic.net/HEqtS.png
  [6]: https://i.sstatic.net/drgsW.png