a. the linked Simple MQTT Client Driver can be installed on Hubitat
If it fits the bill for the messages you're reading in, then yes. That said, if there's a type-specific Device driver, matching the functionality needed, then I'd use that instead (like what @tim.ocallag has posted in here).
There are certain trade-offs in using generic drivers. In this case, the tradeoffs just happen to work nearly perfectly for my energy (MQTT) datafeed.
For me, using my GEM's MQTT format, this came down to:
- One Child device in HE per EMS Power monitoring channel (for rules, graphing, etc)
- No complex (JSON) values needing deep post-processing
- Easily add new Channels without digging into config files
- Driver source code so I could tweak stuff
- Support for basic/primitive values, so things like WatchTower work easily
Notes: HA's MQTT format allows for auto-[re]discovery of children, datatypes, etc. When I make the switch to using the HA MQTT format, vs GEM-MQTT, I'll revisit whether I need a custom Driver to handle it.
Also on the todo list 
b. it could theoretically be possible to get the Fusion Energy Monitor data direct into Hubitat without another computer via this Simple MQTT Client Driver?
Nope. Until HE has a natively integrated, presumably optional, MQTT Broker, you'll always have one of these running externally [in the middle, an another box] between measurement device and HE.
In my case, the thing that's running the GEM <-> MQTT converter code (btmon.py with MQTT extensions) is also running my MQTT Broker (mosquitto).
This is running 110 active MQTT topics (power, energy, volts, temperature, etc) - attached to a dedicated C8 Pro, since it's a lot to process and gather 
In the reviews, users point out privacy issues and that the thing apparently phones home even in "Super Privacy Mode."...
Yeah, I found that amusing. Folks with more advanced Networking gear can work-around that easily, but it's PITA to have to.
I recently found one of my devices sending data to China-mobile IP's. Worked with the vendor to fix that up, but will leave all my Router-rules to prevent most of the common abuse cases... along with some dodgy DNS behavior they implemented - hard-coded 8.8.8.8 (who would do that), calling it with incorrect ports (80, 443 and 22) not just the plain-text DNS port)
My car makes NTP (Time protocol) calls all over the world, so there's lots of cloud-enabled things that need to be fixed...