Yes - all the JavaScript in a WebView has access to the same JavaScript interface, regardless of the server it comes from, because it's executed locally.
You can test this by running two Python SimpleHTTPServer instances on different ports over a local network: they are considered different hosts (an XMLHttpRequest for example will result in a cross-origin request error), but you can still call methods from Javascript even with your iframe coming from a different host.
So far I have not been able to find a way to circumvent this. The Android docs recommend "exposing addJavaScriptInterface() only to JavaScript that is contained within your application APK", but no mention of how to achieve this.
As the Java object is passed on to Javascript, and all of the Javascript is executed within the context of a WebView, I would guess it is up to the Android implementation of WebView / WebViewProvider to provide such a method, but Marshmallow's addJavascriptInterface() is empty as far as the Java framework is concerned (see WebView.java and WebViewProvider.java). It didn't use to be, so maybe that's when the security doc is from.