Hi Flo,
The notifications are only available to include attribute values for the object they're immediately associated with (or are inherited in to that object, like you have with $[Action Items.object_name] for example).
So to get hold of the project/investment code, would require a modification of the object to include those attributes. I've thought about workarounds like having custom attributes added that can be populated with the desired value (somehow) and then include a reference to that attribute in the notification, but I don't think that's viable for the use case of creating an action item which has a notification sent immediately, as the value would have to be populated manually each time.
So in this case, to get a real solution would probably need an enhancement/idea to be proposed to just add the extra fields to the Action Item object out of the box, and have them populated automatically as with the object_name attribute.