Rod length shouldn't be dependent on fish size and only indirectly dependent on stream size.

For example, I fish some very narrow streams in Wisconsin with high banks and high weeds but the typical trout may only be 7". A 9' rod is good to keep my back cast high and out of the grass.

On the other hand, I fish a wider stream in Illinois for creek chub and bluegills. That stream, though, is heavily canopied. A smaller rod makes sense to stay under the branches.