GAMESS and Gaussian : what is the maximum efficient number of supported nodes?
Is there any criteria for selection of best number of CPUs for optimum
  resource usage?


The criteria is basically the same as for choosing the level of theory: benchmarking. Parallel scaling depends on many factors: the level of theory, the size of the molecule, the machine architecture, etc., so there is no golden rule.

Though from my experience I can say that Gaussian 09 single point energy, geometry optimisation and frequencies calculations:


scale well for HF &amp; DFT up to 16 physical cores;
scale well for MP2 up to 8 physical cores;
almost do not scale for CI &amp; CC.


Also note that Gaussian 09 is about 2 times faster for almost any kind of calculations than the previous version (Gaussian 03) and doesn't suffer from some awkwardly strange memory effects (see e.g. here).