Automatic leveling probe offset; adjusting for one side ruins the other When I adjust the probe offset to get the proper layer height and adhesion, one side is set right but the other doesn't work. If I decrease the probe offset (say -1.100 to -1.050) the right side seems to print better; if I increase the probe offset (-1.050 to -1.125) the left side will adhere to the plate properly.

Before I added the BLTouch and upgraded the firmware to Marlin 1.1.9 I was able to print a perimeter square (with a little manual adjustment).

My Printer is the Ender 3 and I am using a glass bed and the model is this centre crosshair
I have had exactly the same experiences as you did with a inductive sensor on a Prusa i3 clone. It looks as though the bed leveling is not executed, or the level/mesh tilted. Please do note that automatic bed leveling is not magic, you still need to provide a build platform as level (and flat) as possible. A slate of glass is a good build platform surface as the glass production process ensures that the glass is very flat and easy to level.

What I did to solve the problem is that I re-leveled the bed and send the M420 S1 command over USB to the printer to enable bed leveling as I was under the impression that it did not use the grid obtained with G29.

On my CoreXY I also use a touch sensor (3DTouch, which is a BLTouch clone) like you do, even with that sensor I sometimes see that the automatic level is uneven (one side of the skirt has very thin/see through deposition, while the other side appears normal), this is most probably caused by the sensor accuracy (or an obstruction under the probe needle). There is a way to increase the probing accuracy by using double probing where the second probe is advancing slower to the build platform as can be seen in the Marlin Configuration.h file:

// Feedrate (mm/m) for the first approach when double-probing (MULTIPLE_PROBING == 2)
#define Z_PROBE_SPEED_FAST HOMING_FEEDRATE_Z

// Feedrate (mm/m) for the "accurate" probe of each point
#define Z_PROBE_SPEED_SLOW (Z_PROBE_SPEED_FAST / 2)


For double probing you require to set:

// The number of probes to perform at each point.
//   Set to 2 for a fast/slow probe, using the second probe result.
//   Set to 3 or more for slow probes, averaging the results.
#define MULTIPLE_PROBING 2




Side note:
From an earlier posting it appears that you are using the #define Z_PROBE_OFFSET_FROM_EXTRUDER in the configuration file to set the offset. It is much more convenient to set that through the LCD menu (Bed Leveling -> Z Probe Offset: -–-) or send  the M851 Zx.xx directly over USB or load through a .gcode file from SD card to prevent numerous flashing the firmware with alternative parameters. Make sure that you enable:

#define EEPROM_SETTINGS // Enable for M500 and M501 commands


in the Configuration.h file and execute M500 to store the new setting set by M851.