I can see the UpdateSourceTrigger property of the binding is set to PropertyChanged. This means that every time you type into the control, the validation logic will be triggered. In order to achieve your requirements you can use some of the other valid values
Also, you can take a look at this post
and evaluate the approach that is suggested there. It might be effective in your particular case.
Pavel R. Pavlov
Check out Telerik Analytics, the service which allows developers to discover app usage patterns, analyze user data, log exceptions, solve problems and profile application performance at run time. Watch the videos
and start improving your app based on facts, not hunches.