So, I had to resort to the following to be 100% sure that users have a way to open their files:
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeName</key>
<string>All files</string>
<key>LSItemContentTypes</key>
<array>
<string>public.content</string>
<string>public.data</string>
</array>
<key>LSHandlerRank</key>
<string>Alternate</string>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
</dict>
</array>
I also dropped any Imported/Exported UTIs (unused in this scenario). Interestingly, I'm unable to open .ovpn files (which are plain text) with public.text or public.plain-text.
Granted, it's bruteforce-like, but it's the only way I had my app appear consistently. The obvious downside is that the app is virtually able to open all files, but compared to a crippling bug it feels like minor cosmetics. Import would eventually fail so I don't really care much.
Hope this can help other developers.
Cheers