Your tach is acting up, won't give the PCM a correct signal. An E4OD needs 3 signals to operate correctly, the Tach, VSS and TCP voltage. plus hydraulic internal pressure. Your mechanic either don't know much about an E4OD or don't know how to troubleshoot them. Give him the list of questions I presented. Remove the tach sensor and clean it if it has any metal shavings on it, if a lot of shavings it may be still good, check the connector for corrosion, or replace it.