It's important to remember how your objects are related. In your GalleryImage.php class you're using "BelongToProduct" as the has_one relationship to a Product page. So try using:
$BelongToProduct.Link
Usually when i'm developing DataObjects i'll use Parent like so
static $has_one=array(
'Parent'=>'Product' //Product being whatever the "parent" is
);
Keeps things consistent.