The poor thing has probably never been properly socialized and add in being let to run loose where there are so many dangers, it is probably terrified, thus the growling and barking. If it was rabid, it would have not acted defensively. Rabies affects the brains..it is almost like being on drugs, they walk funny, act funny not just normal "I am scared of you so I have to get you away from me". If the dog was aggressive, it would have either chased you or lunged at you. You do need to talk to animal control, over and over again, and call all the animal shelters in your area because many of them have humane agents (animal cops basically). The dog catchers just, well, catch where a humane agent has more 'police' powers when it comes to dealing with not just the animals but prosecuting horrific owners too. And strange as it sounds, when you are out walking, carry a few biscuits with you..if the dog starts again, throw some biscuits gently behind it and I bet he turns around to get the food and you can walk away.
I do a lot of rescue and foster work associated with the local shelter in my area and it breaks my heart when humans take in animals but can't be bothered to properly take care of them, then the poor thing becomes a nuisance dog or cat through no fault of its own.