Hello,
As I was thinking about this situation like you as well let me try explain what is going on.
When you stop advertings LSA updates from R5 to R2 you do not stop flow of hellos that originally carried those LSAs. That's why R2 and R5 are still neighbors.
When LSA updates stop flowing routes on R2 will remain in routing table untill LSAs (not being updated any more) time out. MaxAge timer is usually 3600s by default but in my case I think it's just 1800s. When that happens you lose connectivity to all routes on R2.
You could have receive any LSA updates on R2 from R3 as any inter-area routing updates MUST pass area 0. But link R2-R3 is in area 5 and link R2-BB2 in area 51. As you noticed virtual-link between R2 and R3 brought area 0 between R2 and R3 and LSA updates arrived.
This outcome is based on my IOS release 12.4(15)T7 on 2600.
Tom