How do I make custom entity create new revision by default?
Normally the default value is stored in bundle configurations. If you have no bundles then override getNewRevisionDefault() of your content entity form:

class MyEntityForm extends ContentEntityForm {

  protected function getNewRevisionDefault() {
    return TRUE;
  }

}


This class should already exist when you've generated the entity with Drush/Console. Check in the entity annotations that the class is used as form handler.