Never ever chase him when he steals stuff. Distract him, go do something more fun, bust out some really good meat and eat it right there in front of him, offer a piece.
You can try a head collar for the poor leash walking, I heard it works good but a lot of dogs hate it. Practice leash walking in an open field away from other dogs, leave him on leash attached to your belt in the house so he gets better at realizing that he has to go where you want, not where he wants.
Maybe take him to a training class too, he may just be bored and thats why he steals stuff - is he exercised a lot?