Employment Law Questions? Ask an Employment Lawyer.
Federal and state law don't require an employer to pay per diem, so when an employer does so it is an optional benefit that they can provide.
When they choose to provide it, we have to look at how they establish it. Is it in a company policy? If so, then failing to give you per diem would be a violation of their policy, making it a breach of contract. You'd then be able to sue for breach of that contract.
However, if there is no written company policy, the employer can pay it out selectively as long as the employer is not basing their selections on race, religion, gender, age, disability or recent FMLA use. If the employer is discriminating based on one of these statutorily protected factors, then you'd need to file an Equal Employment Opportunity Commission complaint so that your rights can be preserved and the matter can be investigated (you'd file a Department of Labor complaint for FMLA use discrimination).
If you can't point to a contractual or policy requirement, and you can't allege discrimination based on one of the factors I have mentioned, then it's not illegal for the employer to refuse to pay you per diem, even when they have paid it to others.