For the first point of your question, the answer is to not have the two activities (dev and QA) done sequentially. That's not Agile. That's one small Waterfall of duration equal to the sprint. This has already been discussed, so I won't go into more details. Please see https://pm.stackexchange.com/questions/26156/what-does-a-qa-team-do-during-the-development-phase-of-a-sprint-in-agile-scrum

Regarding your second point, you really only have two options: 

- find a way to perform the tests faster (maybe another developer can work as a tester, find ways to automate things, etc). It really depends on how you work. If you do these tests manually, the answer is obvious: try to automate as much as possible to be able to run them on one click of a button.

 - split the tests in two parts and do the second part the next sprint. If you truly have no other way, then have a testing only story in your next sprint. If this is a one time occurrence then it's fine; s#it sometimes happen and you have to deal with it somehow. But if this happens often, then you have a problem: your "loosely Agile Scrum methodology" is broken and needs ro be fixed. This is another thing already covered on the site. Please see https://pm.stackexchange.com/questions/20562/test-only-stories-in-the-sprint

The answer that covers both your points is that you need to have collaboration between developers and QA so that things aren't thrown over the fence from some to others and back, and you need automation testing to make sure things are tested before the sprint ends.