Not sure how practical any of these suggestions might be given the number of unknowns in your situation, but they've got to be more feasible than having parts hanging off of the board. This might not get you to where you need to be, but it might help:
1) Drop the silkscreen. Refer to an assembly document for placement info. You don't have room for ink.
2) Reduce case sizes for passives. Hard to tell from the screen capture, but if your manufacturing house/ assembly person supports it, use 0201 components where possible (if you aren't already). I'm going to assume 01005 case sizes are not supported in your situation.
3) There's a 10 pin device that looks like a USB connector - I don't see it on the schematic, maybe some pins aren't shown on J5 in the schematic? Regardless, if it is a USB connector, make sure you are using the smallest connector possible (micro-USB). If a different size connector (standard USB or mini-USB) is required for whatever this thing will interface with, make an adapter outside the box.
4) For the 10 pin device mentioned in #3, see if you can find a version of the connector without thru-hole pins to pick up a little bit of space on the back side. I think they exist, although you may sacrifice mechanical robustness if you make the swap.
5) I see 2 sets of 3 LEDs - do they report information simultaneously or can their functions be combined? Use 3 LEDs with a slow blink for function 1, fast blink for function 2? Or, use 4 LEDs - 1 to indicate either function 1 or 2, use the remaining 3 as already planned.
6) Is there room in the enclosure in the z dimension? If so, maybe add a header/b2b to bring signals off the original board onto a sub board that could house the switch, LEDs, etc.
7) Instead of placing both C6 and C11, only put 1 of those components in your schematic. Put a note in your schematic indicating both values are required. Hand place second cap directly on top of first cap after boards are built.
Hope this helps. Good luck.