How to utilise isDefaultRevision() for forward revisioning?
It sounds like you want to use content_moderation experimental module that just went into Drupal Core 8.2.x-dev and will be available in Drupal 8.2.0.

That module should also be a great inspiration how to implement the functionality.

In general you will need to create your own route where you first load the revision of the entity, then save it when you get it back from the form with:

$node->setNewRevision();
   $node->isDefaultRevision(FALSE);

The function name is very misnamed (https://www.drupal.org/node/2706337 has the details).

However I strongly suggest to check content_moderation first and maybe you can just utilize it for your needs directly.