The 28-year-old, whose England career has been affected by Chelsea's Ashley Cole being first choice in front of him for so long, opened the scoring with a fierce drive before adding his second from the penalty spot after Claudio Jacob fouled Victor Anichebe in the 2-1 win over West Brom.
Substitute Shane Long pulled one back midway through the second half after a mistake by John Heitinga but Everton had enough to see out victory and move to within a point of fourth-placed Tottenham.
"I think Bainesy has been playing really well and over the last couple of games I've been thinking he needs another challenge," said Moyes.
"He has to rise to it a little bit more and I think he has done that. He has picked himself up again.
"He has a lot of things going for him and he is turning out to be as good a left-back as there is.
"He keeps getting better when teams try to stop him, he tries to work on how he can alter doing things and he is a really good player.
"He is great for a manager because he wants to keep improving and we are very fortunate to have him here.
"He is carrying his ankle (injury) a bit but he misses no days of training and he gets on with it so he is a great player to have but he is also a great player to work with.
"He is a really good footballer, intelligent - apart from his style of hairdo I think he is all right."