I'm really trying hard to figure out what kind of non-technical reason would dictate a ton of work for no technical value. DHH insult your boss? It just seems weird to make a technical decision for non-technical reasons.
Django can probably handle it, but you'd have to override things for every table. You wouldn't be able to reuse your templates and, well, it's different enough that you'll be finding gotchas everywhere. Rails has gotchas too, but you've already dealt with the Rails ones. It just seems like a lot of work for a non-technical reason.
#1 Bad ones: know-nothings who have RoR on their resume "just in case", along with 20 other languages.
#2 Good ones: snobby assholes who read 37's "Fuck You" slide literally, usually very good ex-Java developers who don't really need a full time job because of a plethora of Rails contracting gigs on the market.
We even tried the outsourcing route but even that didn't work: offshore devs are all about PHP/Java/C#.
That isn't really true. I know a few ex Thoughtworker people who know RoR inside out and work as consultants from Bangalore. You just need to know where to look.
As for the larger issue of the various types of RoR programmers - no comment. (I upvoted you!)
Ok, that can be fair although I'd probably consider that a technical requirement. Really, you'll find the same problem with Merb and Django. There are a bunch of people who have done small things (say, a todo list) in them that don't really know the framework. While the Django community doesn't tend to have the same attitude that some of the Rails community has, it's a really small community. Finding good Django programmers is hard. While some in the Django community would argue that it's just Python (vs. Rails' more DSL take on Ruby), it's more than simply Python.
It's hard to hire programmers in general. Django and Merb are much smaller than Rails in terms of exposure and number of programmers. While you might not get as many pretenders or as many bad attitude people, there are simply less people.
I wish I had something more helpful to say here. If you're looking to hire Django people, djangogigs.com and djangopeople.net are good places to post/look. I really think Merb would be the better choice as a lot of the code can be reused - you could completely reuse the models and templates which would probably save you a huge amount of development not to mention require no alteration to your database.
db = MySQLdb.connect(blah)
cur = db.cursor()
cur.execute("SELECT foo from bar where baz")
Spend your time customizing a data access layer to fit your needs, not shoehorning an existing framework into a situation where it'll never quite fit.