Aagin, with your son's more fragile mental state, we all understand that this situation is much more "trying" for him & you than it might be if his particular circumstances were different.
If it were my child whose name was being used, I would most certainly be upset, regardless of what my child's psychological state was.
But again, to fault a police officer at the scene of the crime because he/she does not have access to all the records, fingerprints and IDs of every possible perpetrator is not the issue. The issue is that Thomas is a criminal, has been using your son's name in his illegal activities, and you need to get that informaiton flagged somehow in the legal system so that when your son's name comes up, the police and other law enforcement agencies know enough to do extra background checks etc. to make sure that who they are arresting is not TeresaNJs Son, but is really Thomas Criminal, even if Thomas Criminal gives the name of TeresaNJs Son.
Your choice to go to an attorney to see how this should be done is a good one. I would also consider speaking to the police department in your town and perhaps some of the surrounding towns to let them know that this occurs. In this case, documentation is your best friend. Similar to someone who has been a victim of identity theft, your son's name will need to be attached to a lot of information so when Thomas Criminal pulls his antics, there's info, documentation and resources for law enforcement to follow.
Unfortunately though, this is going to probably be an ongoing issue, since Thomas can move anywhere in the country and give your son's name and get a fake ID or make a fake drivers license. When I was in high school, there was a kid who made a pretty decent living off of getting 17 year olds fake drivers licenses so they could get into bars and I would have defied anyone to determine that it was fake. Criminals are usually pretty smart at beating the system.