Be careful with too much retraction, as if your hot-end is not optimal, or has a very short transition between hot and cold, you can cause jams by having too long of a retract. This can be hidden until you print gcode with many retractions in a small timeframe.
I find that there are ways of combating the drawbacks of a bowden setup with slicer settings, like the coast and wipe functions of simplify3d, or the similar options in KISSlicer and other free alternatives.
n8bot, about coast parameter in S3D, what is the purpose ? I user S3D and I've never used this parameter
You are exactly right about the loose points. I'm speaking even after accounting for these effects, there is a spring effect to the bowden system. This is really unavoidable, as the tube needs to be flexible and the diameter of the filament cannot be exactly the same as the bowden tube or it would bind. I'm even running a 1.8mm ID bowden tube, which is quite tight and requires a geared stepper to drive filament through, and oversized filament will not fit in it. I still see the effects of bowden tube springiness. (Hysteresis is the technical term, I think.)
I use retract length of 3.1mm, 60mm/s and a coast value of 0.8mm in s3d. This works well for ABS, after accounting for the things you mention and having the smaller ID tube.