The change asset model functionality works properly and moves the assets from one family to another. If there are custom extended fields defined on the original asset family and these fields match the fields that are on the new asset family, then the data will be moved properly. If the custom fields do NOT match, then there will be a warning message that the extension field data will NOT be moved when the asset family changes.
In both cases, if the asset family is changed within APM, then the extension table data is correct. If the asset is changed in service desk, then you may still see the old data in the extension table (ci_asset family).
If you plan to move assets from one family to another, use the 'add existing fields' option in a global configuration, to map the existing extended fields that exist on the original model asset family to the target model asset family.