I have fixed the problem by adding the iconAnchor: [10, 40] property to the icon object:
var svg = `<svg width="19px" height="29px" viewBox="0 0 19 29" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
I made an SVG yesterday in Inkscape. It definitely used the centre location of my symmetric icon - a boat.
But I had the opposite problem. I needed the position to be at the front of the boat, not the centre. I solved it by doubling the height of the icon canvas and only using the bottom half for the boat. Maybe you can do something similar.
Think of the ...
Modify the data in PLot to contain a space instead of a Null. Then the problem may go away. Or use a ? to indicate to the viewer that the number of the lot is unknown. That may be important. Features without attributes are usually not as good as features with attributes.
So ... you are using a rule-based symbology.
I think you could try the following (even if we don't see the rules you use) :
Instead of "PLot" only try to label your sites with coalesce("PLot",'') that should enable you to handle NULL cases.
A second possibility could be to elaborate the rules of your symbology a bit more in order to ...