
You can't just "stop" the behaviour, it's now a habbit of his and so you need to untrain that habbit and retrain a new one (to stay by you and not run off).
I am assuming that you had taught your puppy the recall when you first got him?
Rather then letting him off put him onto an extending lead or a long line so he can run but you still have control. with this when he runs off to chase another dog he can only go so far, have the line to call him in and gently guide him back with the line, and use lots of prasie at the end. Keep this up on every walk untill you no-longer have to use the line to guide him back. Maybe you could always try and walk somewhere where there are very few chances of meeting dogs?
I'm sure all on here are aware that your boder terrier needs alot of exercise but at the same time him being "untrained" is a risk to himself, because as you say there are roads!
I am afraid when you get a problem like this you really do have to go back to trining basics and start from scratch, I'ts hard work and along job but with dedication and a firm owner with lots of praise waiting the dog when he does something right then you will soon (hopefully) have a well trained dog!
Also do you go to any obedience classes? I suggest you find one in your area and go to it. I will take all puppies I have to a local club to socilise them and teach them basic obedience (heel, come, stay, sit, down, stand etc) nothing to compete with, but just the basics!
Good luck, just remember this can't be done over night and can take time. How old is you BT?