Since the programming language and many libraries are very similar, the two development systems allow you to reuse what you know about one (B4A) to program using the other (B4J) and vice versa. I would expect quite a few users of the free B4J to become interested in B4A and consider acquiring a license so they can write Android programs. So it isn't a bad idea as a marketing move.
While the languages are quite similar, the structure of programs on Android vs. generic Java (Windows, Linux, etc.) are of course different. B4A uses the native GUI widgets, B4J uses JavaFX.
One other way to look at B4J is as a supplement to B4A. Maybe you have an Android application that needs to connect to a server somewhere to provide back-end services. Could be a shared database, could be other persistent storage to hold Android device application state, etc. Android game high scores?
So since straight Java is highly portable, you could write such services using B4J and test them on your LAN. If you need to make them publicly visible to support your published Android app it is easy enough to find hosting on the Internet that can run these services. Even a lot of cloud computing vendors can host such a service on a Linux or Windows instance for you charging usage-based rates which may be cheaper than monthly rental of a virtual or physical host machine.
Or maybe you're just a B4A programmer who needs to write some Windows or Linux programs. B4J lets you repurpose some of your B4A experience, since B4A doesn't run on those platforms. The results can be more practical than running B4A in an Android emulator or VM.
Just my take on it anyway.