This seems like a problem for the private sector to solve. He should contact his local Chamber of Commerce - it's supposed to look out for business interests, after all, and for any given municipality, seems to have most of the town's politicians in its pocketbook.
A statement from the ACLU condemning NYs lack of action might get him the publicity to kick the city into action, though.
He purchased a license and sent him a response as a receipt. They have an obligation to send him his license or respond or both. That is quite clear. The NYC government doesn't have the right to discretionarily refuse to fulfill the services their residents directly pay them for.
Sure. The ACLU probably won't get involved, but the reason is not that the guy has no case. He clearly has a case.