I changed the URL of my site basically right after I launched it (which was close to 2 months ago). I 301'ed everything from url1.com to url2.com. However, Google still has about 35 pages indexed from the old site (it's indexed virtually all the pages in the new site as well) and still crawls the old site despite getting a 301 on everything which I have verified in the server logs.
This makes me a bit nervous, and the new site is having a tough time ranking, compared to an even newer site that I launched a few weeks ago in a related market segment.
The only traffic I still get to the old URL is from the Googlebot.
So my decision today was to just delete index.php and make everything throw a 404, the idea being that this will force the old pages out of the index faster.
There may in fact be no duplicate content penalty going on - impossible to know - but I don't think I will lose anything by just breaking the old site.
I was in a similar situation a while back, apart from the fact the old site was an established domain.
I removed all pages from the old domain but kept the .htaccess there to 301 all traffic (and the pagerank/rankings).
I knew for a fact it was causing me issues, but the only other option I had was to remove the URLs using Google's Webmaster Tools. I resisted doing this as I wanted to pass the authority of the old domain to the new one, so let Google take it's own course. Four months down the line and there are still four pages indexed on the old domain, but these are only old archived articles so I'm not to worried, plus my page rank and rankings have been transferred.
However I think in your case with both domains being new I would just remove all the old URLs using the Webmaster Tools.