Possible to join different entity type on using EntityFieldQuery?
No. 

An EntityFieldQuery allows you to run queries based on field and property conditions, but it has no way to query the fields or properties of a referenced entity.

Such a thing would involve some pretty full on logic, and it probably wouldn't even be possible to provide a programmatic interface to it that made sense.