Hi, since you are already taking narcotic pain killers, you could continue taking those as they are quite effective as pain relievers.
Ambien is usually prescribed for short term insomnia and should help you get some sleep. However, as you are still not having a good sleep, you could get a new prescription medicine like lunesta or sonata which can decrease the amount of time needed to fall as leep and also reduce the number of awakenings during sleep. Please consult a doctor.
Besides taking the medicines, you should also try out other alternative methods to have a good sleep like:
Develop a regular sleeping schedule.
Avoid caffeine andnicotine just beforehoing to bed.
Maintain a comfortable bedroom temperature.
Increase exposure to sunlight in the morning and avoid it later in the afternoon.( 5 to 6 pm).Check this site.
I hope my answer is helpful to you. For accepting the answer, please press the "GREEN ACCEPT" button.
I would be highly obliged for a POSITIVE FEEDBACK and BONUS from you.