gv$session_wait_history is reporting events of
SQL*Net message to client
SQL*Net message from client
It does appear that the Access changes resolved the overall issue. But while Access was chugging away, I was still seeing LAST_CALL_ET getting reset with no other obvious signs of activity.
If it was changing between FROM and TO there must have been some message coming from Access and bouncing back without an error. Possibly some sort of OCI "ping" type call that didn't involve an SQL statement.
Update: something like a "set context" or "set client identifier" perhaps; possibly a (non-SQL) rollback or commit