How to modify the default WordPress ‘Pages’ widget to have titles on the anchor tags?

A fast and short solution would be –

function wpse_list_pages( $output ){
    $output = preg_replace( '/<a(.*?)>(.*?)<\/a>/', '<a$1 title="$2">$2</a>', $output);
    return $output;
}
add_filter('wp_list_pages', 'wpse_list_pages');

And if you want a proper way, you could extend Walker_Page (ref: post-template.php) class and set the Pages Widget walker to class with widget_pages_args hook