If none of these worked,
you should try to use :
ConstraintLayout targetView = (ConstraintLayout) recyclerView.findViewHolderForAdapterPosition(adapter.getItemCount()-1).itemView;
targetView.getParent().requestChildFocus(targetView, targetView);
By doing this, you are requesting a certain ConstraintLayout (Or whatever you have) to be displayed. The scroll is instant.
I works even with keyboard shown.