Some things you can do:
Reduce Texture Sizes
Open up photoshop, edit every texture you have to fit into the power of 2 compression requirement.
e.g.
etc.
Sometimes the graphical anomalies are unacceptable so you'll leave off the compression, maybe on GUI textures.
Things that you don't want to get blurry at a distance or something that is never viewed from a distance (like GUI textures) don't need mip mapping. You can disable it in the import settings of the texture.
Also if you have overly large textures for your screen size (iphone) you can try reducing the size of the texture, generally 512x512 is big enough for a high res texture and 256x256 or even 128x128 is fine for general use like small model textures.
Reduce Model Sizes
Examine your scene, are you using wasted polys? Go into your modelling software and remove all the polys that are never seen by the player. Particularly on the reverse side of guns and furniture as they tend to be higher in poly count and don't rotate much.
Reduce the number of polys in general and bake lighting into textures to give the illusion of a high poly model.
Use Prefabs!
If your scene has 20 tables in it, don't import a model containing 20 tables. Import the room with just the bare essentials like walls and windows and import the furniture separately on their own. Create a table prefab and then clone the prefab as many times as you need.
This not only saves on model size but also is much more efficient in terms of draw calls and memory usage. As well as the inherent time saving features of using prefabs such as adding scripts or editing colliders. Double Bonus!
Use Texture Sheets!
By sharing one single texture for multiple objects you save loads of draw calls and texture memory as the iPhone can batch all the objects that use the same material. You can probably fit all the textures of a room into a single 512x512 texture sheet.
Reduce Sound Files
If you have lots of sound effects in your game make sure you've got them at the required quality level. Use mono-sounds where ever possible as they have one fewer channel to save unless it's a theme song and you REALLY want to keep the stereo effect.
Music files should be saved as mp3 files as they are natively supported by iPhone and make sure it's at the desired sample rate (e.g. 22khz) and quality, no point in using 5 meg music files when most people will just play their own music over your game.
Note: Unity iPhone supports MP3/M4A (ACC compressed) music files. Ogg compression is not supported on the iPhone.
Code Stripping (pro)
On the player settings in unity you have the option to remove some unused libraries. Best way to do this if you're unfamiliar with it is to pick the highest level of stripping and then try to compile it. If there are errors then pick the next highest until you find a level that lets you run the program.
Also on the final release you can remove the debug icons and compress textures etc.
I'll edit with more stuff if I think of anything