Solutions to 4-byte utf-8 characters in mysql 5.1
Opinion

It's probably better to throw an exception during your applications input checking and not pass the buck to the database. 

Workaround

There is a "workaround" but your mileage may vary:
http://forge.mysql.com/worklog/task.php?id=3780

Brute Force?

You could convert your front end table VARCHAR field to a BLOB and store as binary data to cure the current problem. ...and of course that invites a host of other problems by using BLOBs instead of VARCHAR.

Upgrading

UTF32 may solve the problem and upgrading to 5.5.x isn't has hard as you'd think. Create a replicated slave (farm), sync up and promote it to master.