Just a resolution followup in case someone's doing a thread search: The gas cap checked out OK, so we changed the vacuum switching valve on the charcoal canister, and it seems to have done the trick. There are two gizmos with electrical connections close together on the end of the canister--the vsv is the one with two prongs inside the connection and two vacuum hoses running to it. We mailordered the new part (about $44 delivered). The original part on the car was Toyota part #90080-91186, but the part they shipped us was #90080-91233--I guess Toyota has revised it. The new part obviously had the same two vacuum hookups and the same elect. connection, but it looks a bit different. I changed it without dropping the charcoal canister, and by far the worst part of the job was getting the little mounting screw back in (
much blue language).

Out of curiosity, I "dissected" the old one to see what made it fail. There's a little electromagnetically actuated piston inside that moves back and forth to shunt the air where it needs to go, and in our case, the piston had some bad corrosion on the sides of it that kept it from moving freely. I guess salt water from winter driving got inside. Well, there it is--hope this helps someone . . .
automaton