> Does R1 advertise R3's loopback address to R2
No. R1 actually has no MPLS path to R3's loopback address - try to do "show route table inet.3" on R1, and R3's loopback won't be there.
The label for R3's loopback advertised by R2 cannot be used, as you do have a shorter path to R3 (via the direct link), and LDP follows the IGP to evaluate feasible paths. This is why 'forgetting' family MPLS on an interface can cause huge problems even if there would be other alternative, non-best paths.
> Does R1 advertise R2's loopback address to R2.
No, but the output of "show LDP database" can be confusing.
What is going to happen is that R2 will advertise to R1 a label of 3 (implicit null) for its own loopback. Then, R1 will pick a local label and advertise the loopback prefix back to R2, but that label will never be used as it goes exactly against the IGP.
So if you do a "show LDP database" on R2, you will see an input entry for your loopback which is 3, and another entry with a label allocated by R1, which you will never use.
Hope it helps..
Saverio