I encountered a similar issue. I need to unfocus a textbox when enter is pressed. I end up with this code:
var scope = FocusManager.GetFocusScope(elem); // elem is the UIElement to unfocus
FocusManager.SetFocusedElement(scope, null); // remove logical focus
Keyboard.ClearFocus(); // remove keyboard focus
I think it is cleaner than creating dummy controls and it is reusable. I’m not confident with this solution though. But it seems work well.