Arduino Uno ground?

So if in setup if I do "analogReference(EXTERNAL);" then board is automatically running at 3.3 Volts

No.
If you do analogReference(EXTERNAL) then the reference voltage for the A/D converter is taken from the IOREF pin. If you want this to be 3V3 then you have to connect it to a 3V3 source. Yes you could use a battery but the simplest way is to use the regulated 3V3 supply from the arduino. The one you marked as B on your photo. You need to link this to the IOREF pin.