Yep. In case of local a UDP connection, there’s no difference with a remote machine whatsoever. Just use 127.0.0.1 as an address.
Sure. There’s even a POC on our forum. Take a look! I find it pretty awesome.
You should take it into account but I for most of the application you’ll be fine. You can always switch over to C++ or any other language which Mavlink has bindings to.
Could you please try launching mavproxy like this mavproxy.py --master /dev/ttyUSB0
and see if connection succeeds?