dont want to sound stupid but have you made sure that your using the correct release version?
Since SharePoint Online and SharePoint 2016 have different release
cycles for new capabilities, they also have different capabilities
when it comes to the SharePoint Framework. SharePoint Online always
uses the latest version of the SharePoint Framework, but SharePoint
2016 only supports the version which matches the server-side
dependencies of the deployed packages.+
SharePoint 2016 Feature Pack 2 supports SharePoint Framework
client-side web parts hosted in classic SharePoint pages built using
the SharePoint Framework v1.1.0. This means that when you are
targeting the SharePoint 2016 platform, you'll need to use the
SharePoint Framework v1.1.0 due to the server-side version
also due to restrictions on 2016 and adding .jsom files
SharePoint 2016 - You can also host your files in the local SharePoint
farm itself. You can, for example, define a standardized site in your
farm where all the SharePoint Framework assets are being hosted.
Take note, however, that by default .json files are not allowed to be uploaded to SharePoint 2016 libraries. So farm level settings will
need to be adjusted for this option.
to unrestrict the files (.jsom) then you need to update it in central admin under security -> Define blocked file types.
if all the above is correct then when you add the .sppkg file to the app catalog did you deploy it? once deployed it should be visible in the Apps page section under "apps you can add"