The lower level stuff and NDEF format is well standardized. The higher level operations are not nearly as well standardised right now, even more so when you're dealing with large files, which will require a handoff to Bluetooth or WiFi Direct.
In NFC's defense, it's only recently (4.2, Jelly Bean) that Android even supported transferring large files via Bluetooth handoff, so hopefully that stuff will improve with time.
I've personally never had it work. I tried twice with different two phones (Motorola and Samsung) and while it did recognize it was supposed to do something NFC-esque, the data never transferred. At that point I gave up and just swapped SD-cards and manually copied the data over.
Just my experience but I'm not interested in trying again when there are other methods that I know will transfer data guaranteed to work.
On the flip side, adding the extra hardware to a tag to support encryption has a non-trivial cost. (NFC tags are limited by both storage space and power.) If you're doing mass production of tags, that cost adds up very quickly.
MIFARE DESFire comes to mind as one of the more popular cards with encryption, though I do recall there's others as well: https://en.wikipedia.org/wiki/MIFARE#MIFARE_DESFire
And as for it being unreliable: [citation needed]. I've never had problems sending data to another NFC-enabled device. The only time I've ever had it not work was back when phones with non-NXP chipsets first started to appear on the market, and some folks were still selling standalone tags that used NXP's older proprietary format (MIFARE Classic) rather than the standardized format (NFC Forum). That's rarely a problem these days.