I believe the difference between the 2 options is because 2 different functions are called.
When you click a title in a document library, it calls for its onclick:
and you get the windows 'Open Document' prompt that allows you to choose Read Only or Edit.
When you click an attachment for a list item, it calls
DispDocItemExWithServerRedirect(this, event, 'FALSE', 'FALSE', 'FALSE', 'SharePoint.OpenDocuments.3', '0', ''); return false;
which opens the .vsd file as read only.
I wonder if you could add a customization to your form to replace the attachment onclick event with the one used by the view?