Returning QObjects from a QAIM would be way too resource intensive, so that is not really an option. You will have to realize that not all models represent data that is stored in that format, or even actually part of the application itself. It may just be showing a small part of a database, or of the file system, or...
Notice however, that you can have your QAIM return a pointer to a QObject of your choice (or any other object) in a role of your choosing. So nothing is stopping you from implementing that. You can also use other roles to signify if a card is associated or not. Just define your own custom role id and go for it! In that case, you can use that role in a custom delegate to determine the rendering characteristics for that case.
You are right that ideally, the model would only supply the actual data, the view would do the layout, and the delegate would do the rendering, but sometimes it is just convenient to be able to take a shortcut. You can also take the middle road, and use a proxy model to attach the formatting data to your data model.
IMHO, the current MVD model in Qt has its flaws, but it is not that bad.