the '-keep_overlap' option is only meaningful for the new LAS 1.4 point types 6 to 10. It is meant for marking a set of points that are in areas of flightline overlap so that omitting them with '-drop_overlap' will result in a more uniform point density (i.e. a single layer of scanned points everywhere). The use of the '-keep_overlap' option will - in most workflows - be confined to calculating the amount of overlap points / area and debugging.
The sample file you send me is LAS 1.2 (see lasinfo below) and therefore does not make use of the overlap flag. Hence the overlap flag will always be zero and the '-keep_overlap' option will drop all points. I can think of no situation where the '-keep_overlap' option would make sense to be used for lasclassify. The flag will mainly be used by lasoverage in conjuction with '-drop_overlap' and las2dem / lasgrid / lascanopy. The reason you see a different behavious is that '-keep_overlap' was probably not functional in the older version but has been rewritten as the USGS now is moving to LAS 1.4 workflows as desribed here:
D:\LAStools\bin>lasinfo clip.laz
lasinfo for clip.laz
reporting all LAS header entries:
file signature: 'LASF'
file source ID: 0
global_encoding: 0
project ID GUID data 1-4: 00000000-0000-0000-0000-000000000000
version major.minor: 1.2
system identifier: 'LAStools (c) by rapidlasso GmbH'
generating software: 'lasclip (150330) commercial'
file creation day/year: 171/2014
header size: 227
offset to point data: 229
number var. length records: 0
point data format: 1
point data record length: 28
number of point records: 23986
number of points by return: 23868 118 0 0 0
scale factor x y z: 0.01 0.01 0.01
offset x y z: 0 0 0
min x y z: 308222.28 1563755.93 411.18
max x y z: 308422.25 1563855.92 481.27
the header is followed by 2 user-defined bytes
LASzip compression (version 2.3r0 c2 50000): POINT10 2 GPSTIME11 2
reporting minimum and maximum for all LAS point record entries ...
X 30822228 30842225
Y 156375593 156385592
Z 41118 48127
intensity 2 15
return_number 1 2
number_of_returns 1 2
edge_of_flight_line 0 1
scan_direction_flag 0 1
classification 1 17
scan_angle_rank -23 19
user_data 15 27
point_source_ID 1 2
gps_time 170916.838927 349191.944651
overview over number of returns of given pulse: 23722 264 0 0 0 0 0
histogram of classification of points:
13 unclassified (1)
15 ground (2)
19 low vegetation (3)
550 medium vegetation (4)
23141 high vegetation (5)
102 keypoint (8)
146 bridge deck (17)