What you are describing here is an in silico form of Cherry Picking Fallacy. Before answering your questions specifically, I would like to point out that before assuming bad intent or foul play, consider the biological variability in the datasets, and difficulties writing generalised solutions to biological problems. Take it from a 3rd year grad student and a bioinformatician in training, it's not straight-forward to develop tools for biological datasets. There are both biological and technical challenges in writing "foolproof" software in bioinformatics.
Consider for instance, that there are multiple ways to estimate error and false discovery rate (FDR). There are also varying levels of thresholds used in different labs. Any heuristic value, if hardcoded, might alter the results.
Similarly the biological diversity, as well as technical variability introduced by wetlab benchwork will likely have serious influence on the datasets. Once everything boils down to a large table of numbers, all of that variability is implicit and thus often forgotten.
That said, my answers to your question(s):
No it's not common to pick datasets just to show that your model/software works, at least not publicly. That would go against scientific rigour and ethics. At the same time, you start from what you have available. I typically start with datasets we have in the lab, when I start developing a new tool. But in order to publish your method, you should typically show that it works on data from independent sources, or alternative data types etc. All in all, your results might not be representative of all datasets out there.
It is impossible to answer this question, factually. I am sure there are reviewers that take a look at raw data and/or source code, but it's unlikely that any reviewer actually digs into the source code, line by line, to see if everything checks out. But I am also certain that there are some who just see if you have actually made the source code or test datasets available or not, without actually look at them.
You can always do that, end-user or not. But beware, before you go blowing the whistle on someone else's handiwork (which probably took them a significant amount of time and money) you better get your facts straight. Claiming that they are selling false results or simply misinterpreted their results is a very serious accusation, especially if the authors are renown and respected in the field.
Prior to writing a letter to the editor (who AFAIK have a duty of publishing scrutinising critique on something that has been published in that journal) you should check, and double check, your results. Make sure you are not misunderstanding the statements made in the original work. Make sure you are not misunderstanding your own results. Make sure what you have observed is not a side-effect of your datasets or your own use of the software, try to talk to other people who have used the software. And make sure, your supervisor (and others in the group) are behind you, get your own results investigated by your superiors and colleagues.
If everything checks out you can, and should, inform the journal that the results in the original article might not reflect a general reality, and that you could not replicate the results on independent datasets, then show your results.