Why does quality degrade so much if just cutting video with ffmpeg?
Re-muxing only

Use stream copy mode to just re-mux instead of re-encode:

ffmpeg -ss 01:07:29 -i input -codec copy -map 0 -to 01:08:05 fight.avi



Using -ss as an input option can be faster than using it as an output option, but it may not be as accurate.
-codec copy will stream copy (no re-encoding). Default behavior, if -codec copy is omitted, is to re-encode, and as you've noticed the default encoding settings for most encoders are not optimal (they used to be a decade ago).
Default stream selection is to select only one stream per stream type (video, audio, subtitles, data, etc). -map 0 will ensure all streams are copied in case there are multiples of each type. That being said, your input only has two different streams, so it is actually not needed here.
Development of ffmpeg is very active, so it is important to use a recent build if possible. See the FFmpeg Download page for several options.




If you must re-encode

-crf

You can target a "visually lossless" quality level using the encoder libx264 with the -crf option. CRF is just about as close as you can get to a "constant quality" option: 0 is lossless (but usually results in huge files), ~18 is usually considered to be visually lossless or nearly so, 23 is the default, and 51 is worst.

-preset

The encoding speed to compression (quality per file size) ratio. Basically use the slowest preset you have patience for: ultrafast, superfast, veryfast, faster, fast, medium, slow, slower, veryslow.

ffmpeg -i input -codec:v libx264 -crf 23 -preset medium -ss 01:07:29 -to 01:08:05 output




Also see


FFmpeg H.264 Encoding Guide
Seeking with FFmpeg