How do I enable Mobile Data only for select apps on a rooted phone?
As you are rooted, you can use DroidWall to control network access on a per app basis.

From the Market page:


  Front-end application for the iptables Linux firewall.
  Allows you to restrict which apps can access the network.
  This is the perfect solution if you don't have an unlimited data plan, or just wants to see your battery lasting longer.