От решения с двумя CardView, предложенного выше, пришлось отказаться, т.к. на мой взгляд это противоречит самой концепции CardView ("одна карточка - один CardView"). Поэтому заменил их на RelativeLayout и задал отступы примерно следующим образом:
<LinearLayout>
<RelativeLayout
...
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp">
<TextView />
<TextView />
</RelativeLayout>
<ImageView />
<RelativeLayout
...
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp">
<TextView />
<TextView />
</RelativeLayout>
</LinearLayout>
Теперь думаю, как правильно приподнять картинку и отбросить тень. Пробую так:
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:scaleType="fitCenter"
android:elevation="2dp"
android:background="@drawable/image_bg"/>
где
<!-- res/drawable/image_bg.xml -->
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<stroke android:width="2dip" android:color="#4e4e4e" />
</shape>
Но результат не тот.