Here's my really long answer, in case anyone finds it useful in the future. I pretty much tested everything that I could. The factory service manual was absolutely invaluable and I will continue to recommend people just buy one.
Section EC-5 - Inspect charcoal canister. I basically plugged the various ports it suggested, while blowing through other ports. Yeah, I put my mouth on the canister. ANYWAY, that all passed OK.
Techstream shows CCV test fail: min 589.82 ms, test value 0.0 ms "tank pressure change value at switching over the purge vsv (from closed to open)" - not sure if "tank" means fuel tank or the canister.
I tested both VSVs with an ohmmeter and they both read exactly within the correct resistance range per the FSM specs. Also, Running a techstream test to manually turn the VSVs on/off was successful. i.e. triggered the VSV on or off, blew air through one tube and observed it come out of another tube.
Per DI-86 in FSM vol 2 for P0441:
- DTC P0441 /446 occur when evap emissions leak in any of this system:
○ VSV for evap
○ canister
○ VSV for vapor pressure sensor
○ vapor pressure sensor
○ lines between them
- Specifically the reaons for setting for P0441:
○ "Pressure in charcoal canister does not drop during purge control" 2 trip detection logic.
○ OR... "During purge cut-off, pressure in charcoal canister is very low compared with atmospheric pressure" 2 trip detection logic.
Engine run time was 267 sec in freeze-frame data. If it were under 200 seconds, "carefully check VSV for evap, charcoal canister and vapor pressure sensor". Doesn't mention Vapor pressure VSV (DI-87).
Checked harnesses for shorts.
Measured 4.96V between Vc and e2 on ECM, which is within spec (4.5-5.5V).
Measured 3.28V (step 10) between E2 and PTNK on ECM, although I didn't have a vacuum device to pull on the vapor pressure
sensor. Still, within the 2.9-3.7V spec, so that was good.
Measured 1.86V between E2 and PTNK on ECM (normal spec is 2.0V or less) with vapor pressure sensor disconnected and EVAP VSV triggered "on" via Techstream.
Measured 2.06V between E2 and PTNK on ECM (2.5V or less is normal) after removing gas cap, disconnecting vapor pressure VSV connector and triggering EVAP VSV "on" in Techstream.
As for refilling the canister, I suppose it's possible to drill, but you would need to make two holes because there are two separate containers within it (with an air connection at the bottom, thus the springs). The other issue is the springs themselves. They push off the bottom of the container to compress the charcoal up against the top of the unit. If you drilled the unit out and shook the carbon until it came out, the spring and plate assembly would just fly all over the place inside the unit. I debated just taking the spring and plate out, because it would put less stress on the bottom plate seal, but I wasn't sure if that would cause a problem (they engineered it this way for SOME reason after all). That's where the heavy-duty HVAC zip ties came in. They basically take the pressure of the spring. My guess is that if this experiment fails, it's because a zip tie breaks and the spring rips the seal. Maybe I'll add a couple more zipties for redundancy.
I also found this image online, but it's not in my LX 470 FSM. It shows the codes/pressures/etc. Really helpful to understand the operation of this thing. Yeah, I guess I could have just paid $400 and gotten it over with, but I really wanted to know what was wrong. I ruled out everything that I could. I hate throwing parts at a problem without understanding it.