
I've a rescue dog that I've had about 18 months (he's 5). With the cat issue, I was advised he wasn't good with cats and when I got him home that was the understatement of the year! He would have done damage. However, slowly he accepted that the cat was there and he chased him less and less. The cat got more confident and now there's no problem and they sleep on the bed together and have play fights. I'm sure yours will get used to the cat, just needs time. The less the cat runs away, the less fun it is to chase.
With the toys thing, he had no idea what a toy was for when I got him and his possessiveness was biscuits etc. He was snappy at first when I tried to remove things from him but I think it was because his last home there were lots of dogs and competition. Once he realised things weren't going to disappear if I removed them he was fine. He'll still only let me take things from him but I'm working on that. Classes are a good idea, they helped us. Good luck with your dog, he sounds great and I'm sure it will all work out :)
CG