Bideford AFC ended Weymouth's winning run thanks to two goals from Matt Andrews.
The Terras had won their previous six games, but were undone following a mistake from goalkeeper Simon Evans.
The Robins took the lead when Andrews opened the scoring on 62 minutes with a well-timed volley.
The Terras were given hope when Scott Walker equalised almost immediately. However, the revival didn't last long as Evans tried to go past Bideford striker Kevin Squire.
The ball broke for Andrews - who doubled his tally and gifted his side three vital points.
Weymouth remain in fifth place in the Southern Premier League.