I'm experiencing a similar problem. From client I first need to ping6 my lan nic from where radvd is advertising, before I can reach any external ipv6 address. I must repeat this after idling. Im still searching whats causing this trouble . I'm thinking about radvd, or maybe some bad routing.
I have a ubuntu 10.04 box acting as router with shorewall (only 2 NICs) and a 6in4 tunnel. From here I have no problem pinging any external ipv6 address. The problem resides from client side. All ip6table rules are deleted, and policies set to ACCEPT.