This could be caused by a clogged gas cap vent. As fuel is used, air comes in through the vent to replace it. If the vent is clogged, then air can't replace the dropping fuel, and a partial vacuum can be created in the tank, causing fuel flow to decrease.
It's simple to test for, just loosen the fuel cap and see if the problem goes away. If it does, then cleaning the vent with some compressed air will probably fix it.
Overheating is another possibility; you mentioned that it runs fine for up to an hour hour before it starts to lose power. Is that an hour under heavy load, or mostly idle? The engine should be at operating temperature well before an hour, so I wouldn't think it's overheating unless it happens only under heavy load.
Another quick diagnostic is to remove and inspect the spark plug. Black fluffy looking deposits are carbon, indicating too rich a mixture. Dark greasy deposits may mean too much oil, but I doubt either of those is your case. If the plug has light deposits or appears "too clean" then you may be running too lean, which is what it sounds like.
A possible reason for the mix running more lean over time is a bad gasket surface or bad mating of parts. As parts heat they expand, possibly causing gaps to appear.