Inventorying Data Strings Longer than 254 Characters in SCCM and ConfMgr2012 are truncated on Hardware Inventory

This is a known limitation of the product!

In fact, this behavior is listed in the following TechNet article for SCCM 2007:

Inventorying Data Strings Longer than 254 Characters
https://technet.microsoft.com/en-us/library/bb632463.aspx

When performing hardware inventory, if a property of a data class contains a string value greater than 254 characters, the inventory information for that
property will not be processed or stored in the site database.
For example, if you attempt to inventory the Win32_NTEventLogFile data class and one of the event log string entries is longer than 254 characters, the
inventoried data for that property will be rejected by the management point when the client inventory report is processed.
When this situation occurs, you may see entries in the MP_Hinv.log log file similar to the following message when the client inventory report is processed:

Hinv: warning skipping instance of array property as exceeds max length. Class: "<data class name>" Property: "<data class property>"

This limitation also exists on the latest version of configuration Manager (CM12 R2).