Here's how I would do it. I mean, I've actually done this with learning perfect French, German and Italian accents, so it's not something I just read about.
Download a program called Audacity. It's free. It's a kind of recording program where you can manipulate music, mp3s, wave files, stuff like that. Then, get a headset that has two plugs. One for the earpiece and one for the MICROPHONE that comes with the headset. There's three jacks in back of your computer. One will be for speaker out, one will be for microphone in (the pink one, I think) and one will be for LINE IN. (line in doesn't matter here).
Then when you are on Youtube or whatever, where Americans are speaking, have two windows open. One, Youtube and two, Audacity. You can push the red record button on Audacity and it starts recording whatever YOU are hearing on the computer. So if you're listening to a youtube video, it will record the audio portion of that.
Now you have a WAVE file on your Audacity clipboard, so to speak. You can SAVE your file, say you call it "youtube one" and it's saved as "youtube one.wav" . That's a WAVE file. Note the extension? It could also be saved as "youtube one.mp3" in some circumstances. Doesn't matter. The point is, whenever you want to listen to it, you just open that file, when you have Audacity running.
You can highlight certain sections and use LOOP option so it replays that section endlessly while you are SPEAKING it until you get the accent exactly correct.
Accents are difficult because we DON'T WANT TO CHANGE our own accent. We unconsciously bend our words to what we think it should sound like and THAT IS FLAT OUT WRONG. It's why American's can't speak French. They refuse to speak with a correct accent. They think it makes them look like fairies or something.