When you open the attached email, are the attachements available in your email client (like Outlook) or does the system send the email with an attachment, but strip it when it saves the email to the object? (Or more likely, save the email before adding the attachments)
You could use "SendEmailWithAllAttachments" OOB activity to send with attachments and attach to the workobject. SendSimpleEmail OOB activity which was used in Email Smart shape also internally calls this activity and calls CorrAttach activity( It links the correspondence record to the work object, adds history and saves the it).
1) Compare behavior between using rich-text vs html-style email. One type presents the attachments in outlook on the attachments-line and the other presents the attachments within the email-body. Does one type work better than the other with your application when it attempts to attach emails to work objects?
2) Use the Pega tracer (and possibly some private-checkouts if some of the relevant bits are java steps in activities or rule-utility-functions) to determine where in the process the attachments are being dropped.