Uninstall app without deleting data
If you run adb with no arguments, the help text will tell you the answer to this question.

adb uninstall -k com.mycompany.myapp


removes the app but leaves the data and cache directories. Similarly,

adb install -r myapp.apk


reinstalls an existing app with a new APK file, keeping its data intact.

As a side-note, I don't know if this affects you, but don't forget that Google Play's developer terms forbids apps from updating themselves (updating the APK file) through a non-Google-Play channel. This is to stop developers side-stepping the Google Play terms by building a 'stub' app that, once installed, replaces itself with an app that doesn't meet the Google Play terms. Updating data files and the like is perfectly fine.