custom post type: own database table structure and custom “new-post” interface

What you are describing is not a Custom Post Type and what you want (or think you want) is not a custom post type. To push a CPT to its own separate table you’d have to interrupt core processes in a hundred places, and I am not even sure there are hooks enough to do that.

What you describing is a rebuild of the Custom Post Type system– a duplication of functionality, a second post system in parallel. That is a lot of work.

If you must have your pseudo-CPT in another table, ditch the Core system entirely and start from nothing. It will be less painful.

You’ve solved issue #1. If you are willing to forgo issue #2, issue #3 is also fairly easily solved in a couple of ways.

  1. Most of the meta boxes on a CPT edit page are replaceable, and
    certain elements can be removed when the CPT is registered, or
    removed latter with remove_post_type_support. You can keep
    the GUI but modify it to match your requirements.
  2. You can register_post_type with 'show_in_menu' => false and
    build a form from scratch elsewhere on the back-end.