Indeed, when the file has not a MIME-type association, it is resolved to text/plain if it contains some text or if it is empty, it resolves to application/octet-stream if it contains binary data. Anyway, go straight to the problem and have a look at the GNOME documentation here
and see also the next section to associate a default application. Hope this help.
Regarding the "Open With..." issue, I sincerely don't remember how it works in GNOME, but in KDE when you select an application, you can also check a box saying "remember application association for this type of file" and the system automatically does the dirty work for you. But - I repeat - I'm not sure if GNOME has such an option.