Hello Scott,
I had the same problem and found out that ESRI is using a common dgrid component in the Attribute Table. This component(Selection.js) is found in the folder widgets\AttributeTable\dgrid.
The shift+click command doesnt not work. This is due to the fact that OnDemandList removes rows from the DOM after they are scrolled out of view, so by the time you shift+click, the originally-selected row (and any number of rows in between) is no longer rendered. See link https://github.com/SitePen/dgrid/issues/444.
The distance before which rows are removed is controlled by the farOffRemoval property.
Update the grid component in the widgets\AttributeTable\dgrid by adding the farOffRemoval property, by default it is not there.
Simply add those lines after the dgrid declaration around line 120 (return declare("dgrid.Selection", null,)
// farOffRemoval: Integer
// Defines the minimum distance (in pixels) from the visible viewport area
// rows must be in order to be removed. Setting to Infinity causes rows
// to never be removed.
farOffRemoval: Infinity,
This had work for me.