Two things I remember from when we trained Lokai.
1 - Dogs have to do something about 100 times before it is engrained in their memories. (that includes learning commands)
2 - the reward is praise, not treats. You won't always have a treat in your pocket, but you will always have praise. There will be many times you will call him to come and he will always expect a treat if that's how he's been trained. Don't give him a treat a few times and the reinforcement disappears, as might the training. (Now, if I could just train Jan not to give him treats all the time. )
This has worked for me. It's been 13 years since Lokai was trained and he can still heel, stay, come, and sit with the best of them.