I don't think I am the best one to help with this because I have the same problem but I'll try...
I just finished up Junior year and I never had these issues until this year. I even put off a project for my AP english class until the night before it was due...needless to say it was a long night. I always got everything done, but sometimes I found that making myself pressured to finish, or multitasking (reading with the TV on, or doing math while messaging someone) helped me somewhat. I also worked more efficiently when a deadline was approaching. I tried giving myself deadlines and it semi-worked...sometimes it would, sometimes I would ignore it completely. Could you try that out?
Last summer I simply made a list of all my summer work (I had two AP classes so it was A LOT) and when I completed something I deleted it from the list. I felt super accomplished when I deleted something from the list.
I also tried doing as much work in school as I could. For example my math teacher always gave us the last 15 to 20 minutes to do homework and I always tried to finish my math there, because A. I wouldn't have to do it later, and B. I didn't have to bring home my book

If you have a chance to do your work in school just sit down and do it (Music helps block out classmates).
One final thing I can tell you is try your best not to skip a homework assignment, because once you skip one it is hard to get back on track doing the homework every night (I have experience, math was generally half done, luckily he only checked to see if you did it so I could make it look like I'd done it).
Hope some of this helps!