How to use Yoast SEO backend in english even if WPLANG variable is not english?

That plugin loads its language the moment its main file is included:

load_plugin_textdomain( 'wordpress-seo', false, dirname( plugin_basename( __FILE__ ) ) . '/languages' );

So when your locale filter is used, the language is already there. :/

Move your small plugin into the mu-plugins directory. You can create it if it doesn’t exists in wp-content. That should load your plugin earlier than Yoast’s.

Lesson: Never load your language files before wp_loaded.