How do you join two models together without messing up existing shapekeys?
There is no problem in joining two meshes with shape keys: you only have to be sure that - before entering edit mode - the "basis" shape key is selected in both the meshes. If some shape keys share the same name, change one of them or they will be merged.
All Shape keys are retained as long as you don't modify the vertices moved by shape keys.

If a shape key moves some vertices that you want to stay still: select all vertices you want to stay in the "basis" position, Ctrl V "Blend from shape", in the left bottom corner of the "T" toolshelf panel select "basis" and uncheck the "add" option. This method works also for copying part of a shape key into another.