The genetic algorithm does not remove duplicate points that it finds.
I do not know how you are implementing the constraints for the problem, but I believe that this is an integer-constrained problem. It is entirely possible that gamultiobj does not have a large enough population to give you a diverse Pareto front with the constraints satisfied, or there might not be that many points on the Pareto front even with a large initial population that is well-dispersed. In other words, it is possible that the solution is, by its nature, just a few points, so gamultiobj has to have a lot of duplicates in its solution.
MATLAB mathematical toolbox documentation