Bulk updating image alt and title tags
Hope my below answer helps you.

if you are using Image field, then Image field provides an option to insert "Alt" and "Title" tags. When enabled, you can insert the values in the fields.
When you are saving if yourself, custom save, then the image field array needs to look something like below.

[field_image] =&gt; Array
    (
        [und] =&gt; Array
            (
                [0] =&gt; Array
                    (
                        [alt] =&gt; alt text
                        [title] =&gt; title text
                        [fid] =&gt; 12
                        [display] =&gt; 1
                        [width] =&gt; 220
                        [height] =&gt; 169
                        [description] =&gt; 
                        [upload_button] =&gt; Upload
                        [remove_button] =&gt; Remove
                        [upload] =&gt; 
                    )

            )

    )


However, the above is from the node presave, but when tested for empty values, and changing values in node presave, this worked flawless.
Try that out, curious to know why It wont work, Should be simple (If I understand this correctly :) )

Now, you also need to see at what point you want to implement it.
Node presave, node view or any other point in time.