Hello Brian,
may you check with sh mls on the L2 switch if the RP is accepted by the switch ?
on the Router try to use:
show mls rp vtp-domain blah
Usage Guidelines
The assigned IPX MLS interface must be either an Ethernet or Fast Ethernet interface-both without subinterfaces.
Examples
The following example shows how to assign the MLS interface to the VTP domain named engineering:
Router(config-if)# mls rp vtp-domain engineering
see
http://www.cisco.com/en/US/docs/ios/12_3/switch/command/reference/swi_m1.html#wp1033041
I wonder if you need it from your config it looks like you haven't subifs.
In first edition of CCNP switching says it is needed on the physical port on a trunk with VLAN subifs.
If you haven't a trunk port VTP info isn't exchanged with the switch.
I think that or you need mls rp vlan-id X or you use mls rp vtp-domain blah
the first is needed to inform the router its interface is in Vlan X for the switch and is used on a port without subifs connected to an access port on the switch.
the second is for a trunk port with Vlan subifs.
Or simply you need to provide the mls rp vtp-domain as the last command after mls rp ip.
I remember there was a trick about this.
Hope to help
Giuseppe