You have quite a lot of specifications.
From my (very limited) experience with optical senors, I can only tell you that in practice some do not follow the behavior one can see in the tutorials from the internet. Can be lot of causes, for instance variation by manufacturer (in case of modules), differences in electronic components, insufficient info or wrong assumptions in the projects from the internet etc.
Therefore I adopted the "procure one & check one" strategy. Also, I only look into a few parameters and ask only about the most fuzzy/critical ones.
Bear in mind that Arduino is a learning platform, not an industrial one.