What is the typical size of a mp4 video, size 1280x720 encoded by ffmpeg libx264, and lasts for one hour? Currently my file is around 700Mb, is it too much?
There is no "typical" size. It depends entirely on the quality level and level of motion in the video. I could encode ten hours of video where there is no movement with very little space since the compression would work very well.
On the other hand, if I had a video where every frame was completely different from the last, it would take a huge amount of space to compress it with any kind of quality being left over.
Using Youtube as an example, uses a data rate of 2megabits per second for 720p video. An hour of video has 3600 seconds, so that's 7200 megabits, which is 900 megabytes of video. Bluray disks on the other hand often use much higher rates, such as 10 or even 25mbps which would take 4.5 gigabytes and 11.25 gigabytes respectively.
As you can see, there isn't a "standard" size and it can vary by orders of magnitude. The best bet is to compress it to whatever level you need and see if the quality is sufficient for your purposes, though 700 megabytes for an hour of HD video is already pretty small. Compressing further from such a highly compressed source is likely to obtain sub-standard results at any quality level.
The H.264 standard defines maximum bit rates for 1280x720@30fps as between 14.000 and 42.000 kbit/s, depending on the profile (baseline, main, high etc.). It's even higher for higher frame rates. (http://en.wikipedia.org/wiki/H.264/MPEG-4_AVC)
Sony Vegas standard rendering templates use bitrates between 2 and 16 Mbps.
Youtube recommends bitrates between 5.000 and 30.000 kbps (https://support.google.com/youtube/answer/1722171).
Assuming your video is 700MB (MByte) in size, not 700Mb (MBit), its video bitrate is less than 1.5 Mbps.
So the answer to your question is a definitive No.
Your video is not too big.
It's rather too small. With that low bitrate of yours you might get a better quality by rendering it to a lower resolution.