Why does my module only list 10 nodes?
The taxonomy_select_nodes() function has as default limit of unlimited, so if it's only returning 10 nodes, I would suspect that's all the nodes it was able to match against the provided taxonomy terms.

Note that this function will not return any unpublished nodes, nor return any nodes you do not have access to because of any node-access controlling modules.

Also note that taxonomy_select_nodes() only returns nodes that match $tid only - and not any of that term's children which might be what you are expecting.